dask groupby 聚合正确用法
dask groupby aggregation correct usage
我想了解以下代码中的不同行为。
这是使用 dask/distributed/ubuntu 16.04 全新 conda 安装
us=dd.read_parquet("/home/.......",["date","num_25","num_100","num_unq"]).persist()
g=us.groupby("us.date.dt.week)
x=g["num_25","num_100","num_unq"].mean() # Works !
x=client.persist(x) #
x=g["num_25","num_100","num_unq"].var() # NOT WORKING
x=client.persist(x) #
x=g["num_25","num_100","num_unq"].std() # NOT WORKING
x=client.persist(x) #
x=g.num_100.var() # Works
x=client.persist(x)
我可以使用 mean/min/max 在上面的示例中聚合列组。
但是,例如std/var 我需要分解并一次计算一列。
在它不起作用的情况下,堆栈会报告一个键错误 ("num_25"、"num_100"、"num_unq")
在 Pandas/Dask.dataframe 中,您可以通过传递列列表来 select 多个列。
df[['a', 'b', 'c']].var() # good!
df['a', 'b', 'c'].var() # bad.
我想了解以下代码中的不同行为。
这是使用 dask/distributed/ubuntu 16.04 全新 conda 安装
us=dd.read_parquet("/home/.......",["date","num_25","num_100","num_unq"]).persist()
g=us.groupby("us.date.dt.week)
x=g["num_25","num_100","num_unq"].mean() # Works !
x=client.persist(x) #
x=g["num_25","num_100","num_unq"].var() # NOT WORKING
x=client.persist(x) #
x=g["num_25","num_100","num_unq"].std() # NOT WORKING
x=client.persist(x) #
x=g.num_100.var() # Works
x=client.persist(x)
我可以使用 mean/min/max 在上面的示例中聚合列组。
但是,例如std/var 我需要分解并一次计算一列。
在它不起作用的情况下,堆栈会报告一个键错误 ("num_25"、"num_100"、"num_unq")
在 Pandas/Dask.dataframe 中,您可以通过传递列列表来 select 多个列。
df[['a', 'b', 'c']].var() # good!
df['a', 'b', 'c'].var() # bad.