Разделить столбцы на несколько столбцов по разделителю Python. - PullRequest
0 голосов
/ 12 марта 2020

У меня есть датафрейм под названием «даты» с формой 4380,1, который выглядит так -

                   date
0    2017-01-01 00:00:00
1    2017-01-01 06:00:00
2    2017-01-01 12:00:00
3    2017-01-01 18:00:00
4    2017-01-02 00:00:00
             ...
4375 2019-12-30 18:00:00
4376 2019-12-31 00:00:00
4377 2019-12-31 06:00:00
4378 2019-12-31 12:00:00
4379 2019-12-31 18:00:00 

, но мне нужно разделить один столбец дат разделителем «-» или da sh так что я могу использовать это для группировки по месяцу, например, 01, 02, ... 12. Итак, мой окончательный результат для нового фрейма данных должен иметь форму 4380,4 и выглядеть следующим образом:

     Year Month Day HHMMSS
0    2017 01 01 00:00:00
1    2017 01 01 06:00:00
       ...
4379 2019 12 31 18:00:00

Я не могу найти, как сделать это python преобразование из одного столбца в несколько на основе разделителя. Большое спасибо!

1 Ответ

0 голосов
/ 12 марта 2020

Использование Series.dt.strftime и Series.str.split:

new_df = df['date'].dt.strftime('%Y-%m-%d-%H:%M:%S').str.split('-',expand=True)
new_df.columns = ['Year','Month','Day', 'HHMMSS']
print(new_df)
      Year Month Day    HHMMSS
0     2017    01  01  00:00:00
1     2017    01  01  06:00:00
2     2017    01  01  12:00:00
3     2017    01  01  18:00:00
4     2017    01  02  00:00:00
4375  2019    12  30  18:00:00
4376  2019    12  31  00:00:00
4377  2019    12  31  06:00:00
4378  2019    12  31  12:00:00
4379  2019    12  31  18:00:00
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...