diff options
| author | wukong <wukong@longaeva> | 2018-06-16 21:06:25 -0700 |
|---|---|---|
| committer | wukong <wukong@longaeva> | 2018-06-16 21:06:25 -0700 |
| commit | 39d1486694b3baac5bfafe11f73e179530d6c109 (patch) | |
| tree | 5d44a81df33a27af133e0c3a47f414e305e9d97d /lin_reg.awk | |
| parent | ce5e0a8f088e19e8ebe9a27d8efd4207363791af (diff) | |
added improvements from diff to diff1; increased number of digits printed in diff, diff1, lin_reg, lin_reg1, and lin_reg2;
Diffstat (limited to '')
| -rw-r--r-- | lin_reg.awk | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/lin_reg.awk b/lin_reg.awk index 51f2e87..f82e2e8 100644 --- a/lin_reg.awk +++ b/lin_reg.awk @@ -4,6 +4,7 @@ # simple linear regression between columns BEGIN { + OFS = "%.9g" sign = "[+-]?" decimal = "[0-9]+[.]?[0-9]*" fraction = "[.][0-9]*" @@ -14,17 +15,16 @@ BEGIN { NR == 1 { header_nf = NF for (n=1; n<=NF; n++) { - ($n !~ number) ? header[n] = $n : header[n] = "col_" n + ($n !~ number) ? header[n] = $n : header[n] = "col" n } } NF != 0 { - #printf("\n%s: %s", NR, $0) - if (NF > max_nf) - max_nf = NF + if (NF > nf_max) + nf_max = NF ### iterate over columns - for (y=1; y<=max_nf; y++) { + for (y=1; y<=nf_max; y++) { if ($y ~ number) { ### mean @@ -42,7 +42,7 @@ NF != 0 { (count[y] > 1) ? var[y] = sum_delta2[y]/(count[y] - 1) : var[y] = 0 # x = row, y = col - for (x=1; x<=max_nf; x++) { + for (x=1; x<=nf_max; x++) { count[x,y] += 1 sum_xy[x,y] += $x*$y sum_delta_xy[x,y] += delta[x]*delta[y] @@ -81,10 +81,10 @@ NF != 0 { } END { - for (y=1; y<=max_nf; y++) { - for (x=1; x<=max_nf; x++) { + for (y=1; y<=nf_max; y++) { + for (x=1; x<=nf_max; x++) { if (x != y && r[x,y]) { - printf("\n %g \t (%s) \t = (%g +/- %g)(%s) \t + (%g +/- %g)", + printf("\n %.9g \t (%s) \t = (%.9g +/- %.9g)(%s) \t + (%.9g +/- %.9g)", 10.0*log(r[x,y]*r[x,y])/log(10), header[y], b[x,y], b_err[x,y], header[x], a[x,y], a_err[x,y]) } |
