【发布时间】:2018-11-28 10:27:13
【问题描述】:
我在 Parquet 中存储了约 5.5GB 的数据集。我在该数据集account_language 中有一个系列,它最初是对象(字符串)类型。
谁能解释为什么在将系列转换为分类之后执行相同的计算需要更长的时间?我是否错误地转换为分类?
df = dd.read_parquet('dataset', engine='fastparquet')
%time pre_cat_val_counts = df.account_language.value_counts().compute()
CPU 时间:用户 2.9 秒,系统:678 毫秒,总计:3.57 秒挂壁时间:3.34 秒
df = df.categorize(columns=['account_language'])
%time post_cat_val_counts = df.account_language.value_counts().compute()
CPU时间:用户1分4秒,系统:23秒,总计:1分27秒>Wall时间:1分9秒
【问题讨论】: