时间列填充疑问

2022-01-15 12:41:51 +08:00
 n2l

如图,其他列(未截图)是按照一秒一次的记录,但是时间列( HH, MM, SS )是按照 5 秒一次记录,故出现了如图的结果,想把空值都填充上,比如 26 秒和 30 秒之间填充 27 、28 、29 ,同时秒列遇到 59 的下个被填充成 00 ,同时分钟列+1 ,类似这种,想到好办法,请教各位。

1829 次点击
所在节点    Python
2 条回复
dayeye2006199
2022-01-15 13:27:41 +08:00
nyxsonsleep
2022-01-15 14:23:49 +08:00
如图,其他列(未截图)是按照一秒一次的记录,但是时间列( HH, MM, SS )是按照 5 秒一次记录
你的意思是不是每一行都是每秒记录一次,但是时间信息每 5 秒记录一次?不在 5 的时间点上就缺失时间信息?
我怎么感觉应该先改进时间记录。
原理:
另外这个表如果没有行的记录缺失或者错误,不是直接替换列就行了,因为 pandas 的 df ,每一列都“相当于”是一个{‘表头’:[列表]}的关系,所以只要替换掉列表即可。
方案:
先把时间的列表提取出来,从 sec 开始处理,从第一个时间数据开始把时间按照 60 一个循环进行填充数据,那么 sec 中 00-59 的 index ,在 min 中的 index 位置必然是同一个数值,所以在 min 中进行检索,由于每 5s 就有一个数据,所以就能获得所有的 min 值,同理得到所有 hour 。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/828410

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX