Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 创建包含聚合列和未聚合列的数据帧_Python_Pandas_Dataframe_Pandas Groupby - Fatal编程技术网

Python 创建包含聚合列和未聚合列的数据帧

Python 创建包含聚合列和未聚合列的数据帧,python,pandas,dataframe,pandas-groupby,Python,Pandas,Dataframe,Pandas Groupby,我正在尝试创建一个数据帧,该数据帧将使用.groupby方法聚合的序列与原始数据帧中的序列相结合。当我运行下面的代码时,它返回错误“类型为'int'的对象没有len()”我可以仅使用分组序列或原始序列运行此数据帧,但不能同时使用这两个序列。有人能给我解释一下吗 total\u value=df.groupby([“项目ID”,“项目名称])[“价格”].sum() purchase\u count=(df.groupby([“项目ID”,“项目名称])[“价格”].count().排序\u值(升

我正在尝试创建一个数据帧,该数据帧将使用.groupby方法聚合的序列与原始数据帧中的序列相结合。当我运行下面的代码时,它返回错误“类型为'int'的对象没有len()”我可以仅使用分组序列或原始序列运行此数据帧,但不能同时使用这两个序列。有人能给我解释一下吗

total\u value=df.groupby([“项目ID”,“项目名称])[“价格”].sum()

purchase\u count=(df.groupby([“项目ID”,“项目名称])[“价格”].count().排序\u值(升序=假))

most\u pop=pd.DataFrame({“Item ID”:df[“Item ID”],“Item Name”:df[“Item Name”],“Purchase Count”:Purchase\u Count,“Item Price”:df[“Price”],“Total Purchase Value”:Total\u Value})
尝试:

most\u pop=df.groupby([“项目ID”,“项目名称”],as\u index=False).agg({“价格”:[“总和”,“计数”]))
#只需根据您的命名约定调整多级列:
most\u pop.columns=map(“\u.join,most\u pop”)
most_pop=most_pop.rename(列={“价格总和”:“总购买价值”,“价格计数”:“购买计数”})