2024-04-26 05:14:30 发布
网友
我有一个包含企业信息的数据框。每一排都是生意。F列有业务id,Z列有一个整数告诉我收入。A栏有年份。我只想让每一个企业都在数据框中添加这些年的收入。怎么能这样
我可以为每个这样做的企业写一个循环,但我确信有一个简单的方法
我尝试过用df1 = df1.set_index('F')将F列设置为索引。我现在可以按年份选择并把它们加在一起吗
df1 = df1.set_index('F')
你在找groupby。教程here中介绍了这一点。例如:
groupby
>>> df = pd.DataFrame({"F": ["b1", "b1", "b2", "b3"], "A": [2001,2002,2001,2003], "Z": [100, 200, 50, 200]}) >>> df A F Z 0 2001 b1 100 1 2002 b1 200 2 2001 b2 50 3 2003 b3 200 [4 rows x 3 columns] >>> df.groupby("F")["Z"].sum() F b1 300 b2 50 b3 200 Name: Z, dtype: int64
或者也许
>>> df.groupby("F", as_index=False)["Z"].sum() F Z 0 b1 300 1 b2 50 2 b3 200 [3 rows x 2 columns]
取决于您希望输出是Series还是另一个DataFrame
Series
DataFrame
你在找
groupby
。教程here中介绍了这一点。例如:或者也许
取决于您希望输出是
Series
还是另一个DataFrame
相关问题 更多 >
编程相关推荐