我正在尝试在组中添加两行,例如:ID DATE NUMBER 1 2012-10-11 5 1 2012-10-12 4 1 2012-10-13 3 2 2012-10-11 2 2 2012-10-12 1 2 2012-10-13 6我只想将 2012-10-13 添加到 2012-10-12。然后删除2012-10-13。最后结果:ID DATE NUMBER 1 2012-10-11 5 1 2012-10-12 7 (4+3) 2 2012-10-11 2 2 2012-10-12 7 (6+1)
3 回答
ibeautiful
TA贡献1993条经验 获得超5个赞
Import pandas as pd
## First change the date
for i in range(len(df)):
if df.loc[i,'DATE'] == "2012-10-13":
df.loc[i,'DATE'] = "2012-10-12"
## Then do a groupby sum
df = pd.DataFrame({'SUM' : df.groupby(['ID','DATE'])['NUMBER'].sum()})
我的输出:
SUM
ID DATE
1 2012-10-11 5
2012-10-12 7
2 2012-10-11 2
2012-10-12 7
一只斗牛犬
TA贡献1784条经验 获得超2个赞
特定日期等效
使用字典指定等价
使用replace交换出来
groupby正常使用
df.replace({'DATE': {'2012-10-13': '2012-10-12'}}) \
.groupby(['ID', 'DATE'], as_index=False).sum()
ID DATE NUMBER
0 1 2012-10-11 5
1 1 2012-10-12 7
2 2 2012-10-11 2
3 2 2012-10-12 7
添加回答
举报
0/150
提交
取消