Я заметил, что количество пользователей Qaru и их репутация соответствуют интересному распределению. Я создал pandas DF, чтобы увидеть, могу ли я создать параметрическую привязку :
import pandas as pd
import numpy as np
soDF = pd.read_excel('scores.xls')
print soDF
Что возвращает это:
total_rep users
0 1 4364226
1 200 269110
2 500 158824
3 1000 90368
4 2000 48609
5 3000 32604
6 5000 18921
7 10000 8618
8 25000 2802
9 50000 1000
10 100000 334
Если я нарисую это, я получаю следующую диаграмму:
Распределение похоже на Закон о силе. Чтобы лучше визуализировать это, я добавил следующее:
soDF['log_total_rep'] = soDF['total_rep'].apply(np.log10)
soDF['log_users'] = soDF['users'].apply(np.log10)
soDF.plot(x='log_total_rep', y='log_users')
Есть ли простой способ использовать pandas, чтобы найти наилучшее соответствие этим данным? Хотя подгонка выглядит линейной, возможно, полиномиальное соответствие лучше, так как теперь я занимаюсь логарифмическими масштабами.