Так что в процессе обдумывания этого я решил это, но подумал, когда я писал вопрос, я мог бы также оставить что-то на случай, если это будет полезно.Причиной было неправильное понимание того, как работает Dask.
Проблема заключалась в том, что при вызове .compute()
фактически выполнялся процесс преобразования категоризации и операции value_count вместе.По сути, я поставил в очередь интенсивный процесс категоризации и команду .value_count()
и измерял время, необходимое для выполнения обеих задач.Выполнение .compute()
для классификации FIRST затем значительно ускорило последующие вычисления.
df = df.categorize(columns=['account_language']).compute()
%time post_cat_val_counts = df.account_language.value_counts()
Время ЦП: пользователь 42,5 мс, sys: 1,08 мс, всего: 43,6 мс Время стены: 42,4 мс