Если вы выполните quantile
:
print (dask_df.quantile(q=[.25, .5, .75, .85, .9]).compute().to_frame().T)
0.25 0.50 0.75 0.85 0.90
score 38.0 42.0 46.0 49.0 51.0
, вы получите правильные значения, а на самом деле, если вы не выберете столбец 'Score' после выполнения describe
, вы получите:
print (dask_df.describe(percentiles=[.25, .5, .75, .85, .9]).compute())
score 0
count 100000.00000 NaN
mean 42.00748 NaN
std 6.50478 NaN
min 17.00000 NaN
25% NaN 38.0
50% NaN 42.0
85% NaN 50.0
75% NaN 46.0
90% NaN 51.0
max 73.00000 NaN
, поэтому значения, которые вы ищете, находятся в другом столбце.Здесь я не могу объяснить, почему, поэтому я не могу действительно ответить на вопрос, который вы задаете, но по крайней мере вы видите, что происходит.
Наконец, чтобы получить результат, который вы ищете, затем выберите столбец перед использованиемdescribe
:
print (dask_df.score.describe(percentiles=[.25, .5, .75, .85, .9]).compute().to_frame().T)
count mean std min 25% 50% 85% 75% 90% max
0 100000.0 42.00748 6.50478 17.0 38.0 42.0 50.0 46.0 51.0 73.0
, хотя %
не упорядочены и значения не совпадают