pandas - вычислить процентиль (квантиль) сгруппированных столбцов - PullRequest
0 голосов
/ 17 июня 2020

Мой фрейм данных выглядит как

lang score
en    0.7
fr    0.4
en    0.3
...
it    0.7
fr    0.2
de    0.5
...

Я хочу получить процентиль (Pandas quantile) столбца score, сгруппированного по столбцу lang, поэтому я вычисляю среднее, медианное и процентиль следующим образом:

mean = df.groupby('lang')['score'].mean().sort_values(ascending=False)
median = df.groupby('lang')['score'].median().sort_values(ascending=False)
perc = df.groupby('lang')['score'].quantile(np.linspace(.1, 1, 9, 0))

Хотя mean и median верны, я получаю NaN для столбца квантиля:

fr                       0.1                    NaN
                         0.2                    NaN
                         0.3                    NaN
                         0.4                    NaN
                         0.5                    NaN
...                                             ...
en                       0.5                    NaN
                         0.6                    NaN
                         0.7                    NaN
                         0.8                    NaN
                         0.9                    NaN

Где ошибка?

1 Ответ

1 голос
/ 18 июня 2020

Может быть, у вас есть NaN в вашем фрейме данных?

Попробуйте выполнить это перед вычислением на c:

df.dropna(subset=['score'])
...