我想总结一个数据帧中具有相同行键的行。
目的是缩小数据集的大小。
例如,如果数据框看起来像这样。
Fruit Count
Apple 10
Pear 20
Apple 5
Banana 7
Banana 12
Pear 8
Apple 10
我希望最终的数据帧看起来像这样。
Fruit Count
Apple 25
Pear 28
Banana 19
我正在使用Python的pandas,numpy,matplotlib和其他数据分析包。有没有办法使用这些包中的函数在python中做到这一点?
这是创建示例数据框的代码。
df = pd.DataFrame([["Apple", 10], ["Pear", 20], ["Apple", 5], ["Banana", 7], ["Banana", 12], ["Pear", 8], ["Apple", 10]], columns=["Fruit", "Count"])
答案 0 :(得分:3)
将groupby
与sum()
怎么样?例如df.groupby(['Fruit'])['Count'].sum()
import pandas as pd
df = pd.DataFrame([["Apple", 10], ["Pear", 20], ["Apple", 5], ["Banana", 7], ["Banana", 12], ["Pear", 8], ["Apple", 10]], columns=["Fruit", "Count"])
df = df.groupby(['Fruit'])['Count'].sum()
print(df)
输出:
Fruit
Apple 25
Banana 19
Pear 28
答案 1 :(得分:3)
将groupby
与as_index=False
和sum
一起使用:
>>> df.groupby('Fruit',as_index=False)['Count'].sum()
Fruit Count
0 Apple 25
1 Banana 19
2 Pear 28
>>>
答案 2 :(得分:2)
这应该是获得您所追求的最短方法:
df.groupby("Fruit").sum()
输出:
Fruit Count
Apple 25
Banana 19
Pear 28
答案 3 :(得分:2)
是的!就像
df.groupby("Fruit").sum()
答案 4 :(得分:1)
将groupby
与sum
一起使用
df = df.groupby('Fruit').sum()
print(df)
输出
Fruit Count
Apple 25
Banana 19
Pear 28