我的初始数据框是: Name Info1 Info20 Name1 Name1-Info1 Name1-Info21 Name1 Name1-Info1 Name1-Info22 Name1 Name1-Info1 Name1-Info23 Name2 Name2-Info1 Name2-Info24 Name2 Name2-Info1 Name2-Info2我想这样返回每一行的重复次数: Name Info1 Info2 Count0 Name1 Name1-Info1 Name1-Info2 31 Name2 Name2-Info1 Name2-Info2 2我如何计算重复的 pandas 数据框?
4 回答

隔江千里
TA贡献1906条经验 获得超10个赞
df.groupby(['Name', 'Info1', 'Info2']).size().reset_index().rename(columns={0:"count"})

墨色风雨
TA贡献1853条经验 获得超6个赞
给定你的例子df:
Name Info1 Info2
0 Name1 Name1-Info1 Name1-Info2
1 Name1 Name1-Info1 Name1-Info2
2 Name1 Name1-Info1 Name1-Info2
3 Name2 Name1-Info2 Name1-Info2
4 Name2 Name1-Info2 Name1-Info2
下列:
df.pivot_table(index=list(df), aggfunc='size')
将返回您所追求的:
Name Info1 Info2
Name1 Name1-Info1 Name1-Info2 3
Name2 Name1-Info2 Name1-Info2 2

眼眸繁星
TA贡献1873条经验 获得超9个赞
添加列'count'并执行df.groupby
df['count'] = 1
df.groupby(['Name', 'Info1', 'Info2'])['count'].sum().reset_index()

一只甜甜圈
TA贡献1836条经验 获得超5个赞
size = df.groupby('Name').size().tolist()
df = df.groupby('Name').tail(1).reset_index()
df['Count'] = size
添加回答
举报
0/150
提交
取消