pandas 时、分、秒数据列上有缺失数据,用自己写填充代码处理时间太长,求如何改进?

2019-01-10 09:44:09 +08:00
 habin
DAT_DAY DAT_MONTH DATE_YEAR UTC_HOUR UTC_MIN UTC_MIN_SEC UTC_SEC
0 4.0 NaN NaN 13.0 NaN NaN NaN
1 NaN 12.0 17.0 NaN NaN NaN NaN
2 NaN NaN NaN NaN NaN NaN NaN
3 NaN NaN NaN NaN 40.0 0:40:27 27.0
4 4.0 NaN NaN 13.0 NaN NaN NaN


数据上为递增且连续,例如 0 序号数据应为:4、12、17、13、40、0:40:24、24
主要是处理时、分、秒数据,求给个方法或思路
1881 次点击
所在节点    Python
2 条回复
BingoXuan
2019-01-10 10:27:19 +08:00
先把 index 转换成 datetimeindex,然后从 index 中提取相关信息
princelai
2019-01-10 10:35:07 +08:00
连续且递增?每一条都递增一秒?那就太简单了

首先手动找出第 0 号数据,就比如你写的那个,这一步要手动找出来

```
dt = pd.datetime(2017,12,4,13,40,24)
ser = pd.Series([dt]*10000)
dt2 = pd.Series(map(lambda x:pd.Timedelta(x,unit="s"),ser.index.values)) + ser
dt2.apply(lambda x:(x.day,x.month,x.year,x.hour))
```

最后一步可以不要,只是用于格式化输出的

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

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

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

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

© 2021 V2EX