Стандартное отклонение для SQLite

Может быть, пример из ruby ​​может помочь:

Вы можете включить mixin Comparable и определить одну функцию "<=>(other)", mixin предоставляет все эти функции:

<(other)
>(other)
==(other)
<=(other)
>=(other)
between?(other)

Он делает это, вызывая <=>(other) и вернув правильный результат.

"instance <=> other" возвращает 0, если оба объекта равны, меньше 0, если instance больше other и больше, чем 0, если other больше.

21
задан Alix Axel 19 February 2010 в 07:30
поделиться

3 ответа

Вы не заявляете, какую версию стандартного отклонения Вы хотите вычислить, но различия (стандартное отклонение, в квадрате) для любой версии, могут быть вычислены с помощью комбинации суммы () и количество () агрегатные функции.

select  
(count(val)*sum(val*val) - (sum(val)*sum(val)))/((count(val)-1)*(count(val))) as sample_variance,
(count(val)*sum(val*val) - (sum(val)*sum(val)))/((count(val))*(count(val))) as population_variance
from ... ;

все еще будет необходимо пустить квадратный корень их для получения стандартного отклонения.

0
ответ дан 16 October 2019 в 23:39
поделиться

Нет, я искал тот же вопрос, и в итоге мне пришлось делать вычисления в моем приложении (PHP)

2
ответ дан 16 October 2019 в 23:39
поделиться

Агрегатные функции, поддерживаемые SQLite, приведены здесь:

http://www.sqlite.org/lang_aggfunc.html

STDEV отсутствует в списке.

Однако модуль extension-functions.c на этой странице содержит функцию STDEV.

15
ответ дан 16 October 2019 в 23:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: