summaryrefslogtreecommitdiff
path: root/kalman.awk
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--kalman.awk17
1 files changed, 5 insertions, 12 deletions
diff --git a/kalman.awk b/kalman.awk
index 18279b1..f67e9de 100644
--- a/kalman.awk
+++ b/kalman.awk
@@ -1,3 +1,5 @@
+#!/usr/bin/awk -f
+
### lin_reg.awk
# simple linear regression between columns
@@ -12,10 +14,7 @@ BEGIN {
NR == 1 {
header_nf = NF
for (n=1; n<=NF; n++) {
- if ($n !~ number)
- header[n] = $n
- else
- header[n] = "col_" n
+ ($n !~ number) ? header[n] = $n : header[n] = "col_" n
}
}
@@ -40,10 +39,7 @@ NF != 0 {
sum_delta2[y] += delta[y]*delta[y]
### sample variance
- if (count[y] - 1)
- var[y] = sum_delta2[y]/(count[y] - 1)
- else
- var[y] = 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++) {
@@ -64,10 +60,7 @@ NF != 0 {
# correlation
r_den[x,y] = sqrt(sum_delta2[x]*sum_delta2[y])
- if (r_den[x,y])
- r[x,y] = sum_delta_xy[x,y]/r_den[x,y]
- else
- r[x,y] = 1
+ (r_den[x,y]) ? r[x,y] = sum_delta_xy[x,y]/r_den[x,y] : r[x,y] = 1
ab_den[x,y] = (count[x,y]*sum2[x] - sum[x]*sum[x])
if (ab_den[x,y]) {