diff options
| author | wukong <wukong@longaeva> | 2026-04-10 23:46:12 -0700 |
|---|---|---|
| committer | wukong <wukong@longaeva> | 2026-04-10 23:46:12 -0700 |
| commit | 4c4eb1bd8f003b3b57707badd2dd089ed193a896 (patch) | |
| tree | 15b62907fffd70c46a9b4369df93ab33c6aa88ac /exp_reg.awk | |
| parent | e7d1781578e846a7b1d634cd43c8fab00a67b883 (diff) | |
renamed fir window generators;
minor edits to whitespace and comments for more consistent style;
Diffstat (limited to 'exp_reg.awk')
| -rw-r--r-- | exp_reg.awk | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/exp_reg.awk b/exp_reg.awk index f4ea12c..fac4b8f 100644 --- a/exp_reg.awk +++ b/exp_reg.awk @@ -3,6 +3,7 @@ ### lin_reg.awk # simple linear regression between columns + BEGIN { OFS = ":" sign = "[+-]?" @@ -12,23 +13,25 @@ BEGIN { number = "^" sign "(" decimal "|" fraction ")" exponent "$" } + +# column headers NR == 1 { for (n=1; n<=NF; n++) ($n ~ number) ? header[n] = "col" n : header[n] = $n } -NF { - if (NF > nf_max) - nf_max = NF - ### iterate over columns +NF > 0 { + (NF > nf_max) ? nf_max = NF : nf_max = nf_max + + # columns for (y=1; y<=nf_max; y++) { if ($y == header[n]) continue if ($y ~ number) { - ### mean + # mean count[y] += 1 data[y] = log($y) sum[y] += data[y] @@ -39,7 +42,7 @@ NF { sum_delta[y] += delta1[y] sum_delta2[y] += delta0[y]*delta1[y] - ### sample variance + # sample variance #(count[y] > 1) ? var[y] = sum_delta2[y]/(count[y] - 1) : var[y] = "" # x = row, y = col, trendline: y = A + Bx @@ -92,6 +95,7 @@ NF { } } + END { for (y=1; y<=nf_max; y++) { for (x=1; x<=nf_max; x++) { |
