1 回答
TA贡献1856条经验 获得超17个赞
我们需要numeric列能够对它们进行计算,在这种情况下sum:
#Example dataframe
df = pd.DataFrame({'date':['2019-01-04', '2019-01-04', '2019-01-03', '2018-12-22', '2018-08-31'],
'replies_count':['46', '143', '64', '154', '50'],
'polarity':[10, 20, 30, 40, 50]})
print(df)
date replies_count polarity
0 2019-01-04 46 10
1 2019-01-04 143 20
2 2019-01-03 64 30
3 2018-12-22 154 40
4 2018-08-31 50 50
检查列的类型
print(df.dtypes)
date object
replies_count object
polarity int64
dtype: object
应用groupby与sum
print(df.groupby('date').sum())
polarity
date
2018-08-31 50
2018-12-22 40
2019-01-03 30
2019-01-04 30
现在将replies_count列的类型更改为int并执行相同groupby的操作sum
df['replies_count'] = df['replies_count'].astype(int)
print(df.groupby('date').sum())
replies_count polarity
date
2018-08-31 50 50
2018-12-22 154 40
2019-01-03 64 30
2019-01-04 189 30
正如我们所见,该列现在已包含在内。
添加回答
举报