Как добавить два datetime в dataframe? - PullRequest
0 голосов
/ 02 июля 2019

Если есть dataframe с двумя столбцами, как я могу добавить col[1] только к col[0] времени.Я имею в виду, что у меня есть данные примерно за

              stepTime                         Time

0  2019-07-02 00:00:00      2019-08-10 08:52:00

1  2019-07-02 00:00:01      2019-08-10 08:52:00

2  2019-07-02 00:00:02      2019-08-10 08:52:00

3  2019-07-02 00:00:03      2019-08-10 08:52:00

4  2019-07-02 00:00:04      2019-08-10 08:52:00

, и я хочу создать новый столбец realTime, который добавляет Time к stepTime времени только как позади

              stepTime                      Time              realTime

0  2019-07-02 00:00:00   2019-08-10 08:52:00   2019-08-10 08:52:00

1  2019-07-02 00:00:01   2019-08-10 08:52:00   2019-08-10 08:52:01

2  2019-07-02 00:01:02   2019-08-10 08:52:00   2019-08-10 08:53:02

3  2019-07-02 00:02:03   2019-08-10 08:52:00   2019-08-10 08:54:03

4  2019-07-02 01:05:04   2019-08-10 08:52:00   2019-08-10 09:57:04

Я пытался так, но это не работает

df["realTime"] = df.Time + df.stepTime.datetime.strftime('%H')

1 Ответ

0 голосов
/ 02 июля 2019

Вы не можете напрямую добавлять панды Datetime столбцы. Сначала необходимо преобразовать один из столбцов в timedelta, вычтя дату, а затем добавить эту временную дельту в Datetime:

df["realTime"] = df.stepTime + (df.Time - df.Time.dt.floor('D'))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...