3 回答

TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個贊
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貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超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
添加回答
舉報(bào)