У меня есть коллекция данных, распределенная следующим образом:
Данные состоят из записей 5 наблюдаемых чисел от 1 до 90.
В каждой записи номера уникальны, т.е. одна и та же запись не может наблюдаться более одного раза, но разные записи могут иметь одинаковые точные значения.
У меня около 50 000 записей, и я хотел бы найти стандартное отклонение частоты появления чисел.
Пример данных:
RECORD1 : 7, 9, 67, 32, 89
RECORD2 : 56, 37, 66, 1, 27
RECORD3 : 1, 7, 54, 48, 90
И так далее, и тому подобное.
Данные сохраняются в mysql, и я предпочтительно хотел бы использовать php для представления данных, но кроме кода, я хотел бы знать методику расчета стандартного отклонения частоты возникновения.
Если это возможно сделать с использованием только кода MySQL, это намного лучше и быстрее.
Я уже рассчитываю частоту следующим образом, создав следующий код SQL:
$query = "Select ";
for($_i = 1; $_i < 91; $_i++)
{
$query.= "(Select count(*)
from tbl_occur
where clm_number_1 = $_i
or clm_number_2 = $_i
or clm_number_3 = $_i
or clm_number_4 = $_i
or clm_number_5 = $_i) as freq_$_i";
if ($_i < 91) $query .= ", ";
}
Что приведет к следующему sql-запросу, но, конечно, с помощью цикла я получаю частоту всех 90 чисел, это только для числа 1
Select (Select count(*)
from tbl_occur
where clm_number_1 = 1
or clm_number_2 = 1
or clm_number_3 = 1
or clm_number_4 = 1
or clm_number_5 = 1) as freq_1,
С уважением,