【发布时间】:2019-10-14 15:33:17
【问题描述】:
我尝试重命名作为 groupby & count 操作的结果获得的列,如下所示:
dfa = df.groupby('Product_ID').Product_ID.count().rename(columns={0: "Product",1:"Sale_count"}).reset_index()
print(dfa[:1])
得到的输出是
Product_ID 0
0 P00000142 1130
列名不是我指定的。所以我使用以下命令再次更改它
dfa.columns =['product','sales']
print(dfa[:1])
product sales
0 P00000142 1130
然后我得到了预期的列名。但是我相信它应该在第一个方法 dataframe.rename 中获得。第一个代码有什么问题 sn-p dfa = df.groupby('Product_ID').Product_ID.count().rename(columns={0: "Product",1:"Sale_count"}).reset_index()我没有得到预期的输出。
【问题讨论】:
-
你需要
df.groupby('Product_ID').size().reset_index(name='sales_count')吗? -
df.groupby('Product_ID').Product_ID.count()将产生一个系列,而不是一个数据框。但是,您的输出 是 一个数据框。您的代码似乎不太正确,否则输出看起来不一致。 -
@anky_91:这行得通!谢谢
标签: python pandas rename calculated-columns