src/utils/ave/ave.c 1.10
1.10 2009/11/18 20:07:23 hiram
Previous standard deviation was incorrect, was not using N-1
Index: src/utils/ave/ave.c
===================================================================
RCS file: /projects/compbio/cvsroot/kent/src/utils/ave/ave.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -b -B -U 4 -r1.9 -r1.10
--- src/utils/ave/ave.c 17 Nov 2009 23:39:26 -0000 1.9
+++ src/utils/ave/ave.c 18 Nov 2009 20:07:23 -0000 1.10
@@ -87,13 +87,17 @@
oneVar = (average-val);
totalVar += oneVar*oneVar;
}
+ double var = totalVar;
+ if (count > 1)
+ var /= count-1;
+ double stdDev = sqrt(var);
if (tableOut)
{
printf("# min Q1 median Q3 max mean N sum stddev\n");
printf("%g %g %g %g %g %g %d %g %g\n", minVal, q1, array[count/2],
- q3, maxVal, average, count, total, sqrt(totalVar/count));
+ q3, maxVal, average, count, total, stdDev);
}
else
{
printf("Q1 %f\n", q1);
@@ -103,9 +107,9 @@
printf("min %f\n", minVal);
printf("max %f\n", maxVal);
printf("count %d\n", count);
printf("total %f\n", total);
- printf("standard deviation %f\n", sqrt(totalVar/count));
+ printf("standard deviation %f\n", stdDev);
}
}
void aveNoQuartiles(char *fileName)