Я использую пакет Powerlaw Python Джеффа Олстотта, чтобы попытаться подогнать мои данные к степенному закону. Пакет Джеффа основан на статье Clauset et al, в которой обсуждается Powerlaw.
Во-первых, некоторые подробности о моих данных:
- Он дискретный (данные о количестве слов);
- Он сильно смещен влево (высокая асимметрия)
- Это лептокуртик (избыточный эксцесс больше 10)
Что я уже сделал
df_data — это мой фрейм данных, где word_count — это серия, содержащая данные о количестве слов примерно для 1000 токенов слов.
Сначала я создал объект fit:
fit = powerlaw.Fit(data=df_data.word_count, discrete=True)
Затем я сравниваю степенное распределение для своих данных с другими распределениями, а именно: логарифмически нормальное, экспоненциальное, логарифмически нормальное_положительное, растянутое_экспоненциальное и truncated_powerlaw с помощью метода fit.distribution_compare(distribution_one, Distribution_two).
В результате применения метода Distribution_compare я получил следующие кортежи (r,p) для каждого из сравнений:
- fit.distribution_compare('power_law', 'lognormal') = (0,35617607052907196, 0,5346696007)
- fit.distribution_compare('power_law', 'exponential') = (397.3832646921206, 5.3999952097178692e-06)
- fit.distribution_compare('power_law', 'lognormal_positive') = (27,82736434863289, 4,2257378698322223e-07)
- fit.distribution_compare('power_law', 'stretched_exponential') = (1,37624682020371, 0,2974292837452046)
- fit.distribution_compare('power_law', 'truncated_power_law') =(-0,0038373682383605, 0,83159372694621)
Из документации по степеням:
Р : поплавок
Логарифмическое отношение правдоподобия двух наборов вероятностей. Если положительный, первый набор вероятностей более вероятен (и поэтому распределение вероятностей, которое их произвело, лучше соответствует данным). Если отрицательный, верно обратное.
р : плавающий
Значимость знака R. Если значение ниже критического (обычно 0,05), знак R считается значимым. Если выше критического значения, знак R считается обусловленным статистическими флуктуациями.
Из результатов сравнения между степенным, экспоненциальным и логарифмически нормальным распределениями я склонен сказать, что у меня есть степенное распределение.
Будет ли это правильной интерпретацией/предположением о результатах теста? Или, возможно, я что-то упускаю?