我有一个月的数据框(不包括周六和周日),每 1 分钟记录一次。
v1 v2
2017-04-03 09:15:00 35.7 35.4
2017-04-03 09:16:00 28.7 28.5
... ... ...
2017-04-03 16:29:00 81.7 81.5
2017-04-03 16:30:00 82.7 82.6
... ... ...
2017-04-04 09:15:00 24.3 24.2
2017-04-04 09:16:00 25.6 25.5
... ... ...
2017-04-04 16:29:00 67.0 67.2
2017-04-04 16:30:00 70.2 70.6
... ... ...
2017-04-28 09:15:00 31.7 31.4
2017-04-28 09:16:00 31.5 31.0
... ... ...
2017-04-28 16:29:00 33.2 33.5
2017-04-28 16:30:00 33.0 33.7
如何重新采样数据帧以获取每天的第一个和最后一个值。所需的数据框:
v1 v2
2017-04-03 09:15:00 35.7 35.4
2017-04-03 16:30:00 82.7 82.6
2017-04-04 09:15:00 24.3 24.2
2017-04-04 16:30:00 70.2 70.6
... ... ...
2017-04-28 09:15:00 31.7 31.4
2017-04-28 16:30:00 33.0 33.7
这是一种方法:
res = df.groupby(df.index.date).apply(lambda x: x.iloc[[0, -1]])
res.index = res.index.droplevel(0)
print(res)
v1 v2
2017-04-03 09:15:00 35.7 35.4
2017-04-03 16:30:00 82.7 82.6
2017-04-04 09:15:00 24.3 24.2
2017-04-04 16:30:00 70.2 70.6
2017-04-28 09:15:00 31.7 31.4
2017-04-28 16:30:00 33.0 33.7
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)