diff options
| author | wukong <wukong@longaeva> | 2018-06-05 23:09:34 -0700 |
|---|---|---|
| committer | wukong <wukong@longaeva> | 2018-06-05 23:09:34 -0700 |
| commit | fa0b85bc5856ee33ee80ee08f174e464673f1fce (patch) | |
| tree | 7bdb57c8bb67292235cdf79f32826f1d2ee839eb /diff1.awk | |
| parent | 8f263e859e0970ce87b77addc80dec28e8fc7e82 (diff) | |
removed unnecessary variables from diff.awk, saved as diff1.awk
Diffstat (limited to '')
| -rw-r--r-- | diff1.awk | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/diff1.awk b/diff1.awk new file mode 100644 index 0000000..41859db --- /dev/null +++ b/diff1.awk @@ -0,0 +1,35 @@ + +BEGIN { + sign = "[+-]?" + decimal = "[0-9]+[.]?[0-9]*" + fraction = "[.][0-9]*" + exponent = "([Ee]" sign "[0-9]+)?" + number = "^" sign "(" decimal "|" fraction ")" exponent "$" +} + +NR == 1 { + header_nf = NF + for (n=1; n<=NF; n++) { + if ($n !~ number) + header[n] = "d" $n + else + header[n] = "col_" n + printf("%s,", header[n]) + } +} + +NF != 0 { + if (NF > max_nf) + max_nf = NF + + ### iterate over columns + for (y=1; y<=max_nf; y++) { + if ($y ~ number) { + data[y] = $y + diff[y] = data[y] - data_prev[y] + printf("%g,", diff[y]) + data_prev[y] = data[y] + } + } + printf("\n") +} |
