Я пытаюсь выполнить проверку соответствия KS для моих данных и предполагаемого распределения.
Сюжет такой
код, который я использую, и результаты следующие:
sp.stats.kstest(df['col'], 'norm', args = (mean, sd), N = 1000000)
KstestResult (статистика = 0,06905359838747682, значение = 0,0)
- из df Я беру свои данные.
- 'норма', потому что я предполагаю нормальное распределение.
- args - это кортеж с
- параметры для теоретической функции распределения, которую я оценил, используя мой
набор данных.
- N = 1000000 в качестве размера выборки.
Конечно, подгонка не идеальна, но я не могу понять, почему значение p составляет всего 0,0. Я делаю что-то неправильно, используя функцию, или подгонка это плохо? Я ожидаю, что значение p будет маленьким, даже 0,01 или 0,000000536 или что-то еще, но не равным нулю.
Есть идеи, что не так или что можно сделать, чтобы это работало?
Кстати: необработанные данные изначально распределяются по нормальному логарифмическому закону (если посмотреть на оригинал, то здесь, на графике, это после преобразования журнала)