我有以下数据:
level_0 level_1 level_2
0 90936.0 91908.0 Profile1
1 92551.0 93049.0 Run1
2 93459.0 94053.0 Profile2
3 94723.0 95333.0 Profile3
4 95444.0 95713.0 Run2
5 100221.0 100758.0 Run3
6 100937.0 101243.0 Run4
我想将level_0
和level_1
列的格式设置为观察开始(level_0
)和结束(level_1
)的时间:
level_0 level_1 level_2
0 9:09:36 9:19:08 Profile1
1 9:25:51 9:30:49 Run1
2 9:34:59 9:40:53 Profile2
3 9:47:23 9:53:33 Profile3
4 9:54:44 9:57:13 Run2
5 10:02:21 10:07:58 Run3
我该怎么做? 谢谢
答案 0 :(得分:0)
我假设您的数据框位于pandas
中。在这种情况下,一种方法是使用apply
将pd.to_datetime
应用于两列,然后使用dt.time
仅访问时间字符串:
df[['level_0','level_1']] = df[['level_0','level_1']].apply(lambda x: pd.to_datetime(x, format='%H%M%S.0').dt.time)
>>> df
level_0 level_1 level_2
0 09:09:36 09:19:08 Profile1
1 09:25:51 09:30:49 Run1
2 09:34:59 09:40:53 Profile2
3 09:47:23 09:53:33 Profile3
4 09:54:44 09:57:13 Run2
5 10:02:21 10:07:58 Run3
6 10:09:37 10:12:43 Run4