Как заполнить столбцы «Дата и время» временного ряда с серией значением индекса метки времени - PullRequest
0 голосов
/ 23 ноября 2018

У меня есть следующий фрейм данных, где индекс представляет собой метку времени:

                           Date Time  
2018-11-21 09:50:00-08:00  NaN  NaN    
2018-11-21 08:28:00-08:00  NaN  NaN    
2018-11-21 06:34:00-08:00  NaN  NaN    
2018-11-21 04:44:00-08:00  NaN  NaN     
2018-11-21 04:37:00-08:00  NaN  NaN

Как можно заполнить столбцы Дата и Время значениями, заданными меткой времени?Так что я могу получить это:

                           Date        Time  
2018-11-21 09:50:00-08:00  2018-11-21  09:50 AM    
2018-11-21 08:28:00-08:00  2018-11-21  08:28 AM    
2018-11-21 06:34:00-08:00  2018-11-21  06:34 AM    
2018-11-21 04:44:00-08:00  2018-11-21  04:44 AM     
2018-11-21 04:37:00-08:00  2018-11-21  04:37 AM

Заранее благодарю за любую помощь или рекомендацию .... Хосе

1 Ответ

0 голосов
/ 23 ноября 2018

Вы можете извлечь строку даты с начала до первого раза, преобразовать ее в дату и время и использовать аксессор date и time с соответствующими средствами форматирования:

x = pd.to_datetime(df.index.str.extract('(.*\d{2}:\d{2}:\d{2})'))

df['Date'] = x.date

df['Time'] = x.strftime('%I:%M %p')

>>> df
                                 Date      Time
2018-11-21 09:50:00-08:00  2018-11-21  09:50 AM
2018-11-21 08:28:00-08:00  2018-11-21  08:28 AM
2018-11-21 06:34:00-08:00  2018-11-21  06:34 AM
2018-11-21 04:44:00-08:00  2018-11-21  04:44 AM
2018-11-21 04:37:00-08:00  2018-11-21  04:37 AM
...