根据日期列对数据框中的行进行分组

我正在尝试使用groupby使用以下代码基于相似的日期行对以下数据进行分组,但是它不起作用:

df = df.reset_index()
df = df.groupby(on='date')

我无法获得正确的语法来工作:

输入:

http://img4.mukewang.com/607536700001f25c03500121.jpg

预期结果:

http://img.mukewang.com/6075367e0001b33503550080.jpg

有人可以给我一些指示吗?


红颜莎娜
浏览 186回答 1
1回答

白猪掌柜的

您可以groupby与bfill和一起使用ffill。然后删除重复项。要按索引分组,请使用level=0:df = pd.DataFrame([['2017/06/22', 49.8, 281.6, np.nan],                   ['2017/06/22', np.nan, np.nan, 36.1],                   ['2017/06/23', 49.6, 280.2, np.nan],                   ['2017/06/23', np.nan, np.nan, 35.9]],                  columns=['date', 'ratio', 'local', 'usd'])df = df.set_index('date')g = df.groupby(level=0)df = g.bfill().ffill().drop_duplicates()print(df)            ratio  local   usddate                          2017/06/22   49.8  281.6  36.12017/06/23   49.6  280.2  35.9
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python