[P&AM Lab] Устойчивый онлайн алгоритм -- стандартное отклонение
Grigoriy A. Sitkarev
sitkarev на komitex.ru
Вс Сен 9 00:39:30 MSK 2012
Приветствую всех.
Последняя рекуррентная формула, что я показывал, в коде на Си ниже.
На мой взгляд, в коде выглядит проще, чем в формуле на доске. Может быть
я не прав.
#define NELEMS(x) (sizeof(x)/sizeof(x[0]))
void
var3()
{
float x[] = { 10000, 10001, 10002 };
float M, Q;
float c, s2;
int i;
M = x[0];
Q = 0.0;
for (i = 1; i < NELEMS(x); i++) {
c = x[i] - M;
Q += (i*c*c)/(i+1);
M += c / (i+1);
s2 = Q / i;
}
printf("mu=%e s^2=%e\n", M, s2);
}
Удачных экспериментов.
--
Г.А.
Подробная информация о списке рассылки Lab