Как уменьшить точность даты (секунды) - PullRequest
0 голосов
/ 04 марта 2019

У меня есть файл csv, df, который я прочитал с помощью следующей команды:

pd_index=pd.read_csv(".../...",index_col="index",parse_dates=["created_at"])

Вывод:

              created_at        ...         user_screen_name
index                            ...                         
0     2019-02-27 05:36:29        ...          realDonaldTrump
1     2019-02-27 05:31:21        ...          realDonaldTrump
2     2019-02-26 18:08:14        ...          realDonaldTrump
3     2019-02-26 04:50:37        ...          realDonaldTrump

Я хотел бы получить следующий результат:

              created_at        ...         user_screen_name
index                            ...                         
0     2019-02-27 05:36:00        ...          realDonaldTrump
1     2019-02-27 05:31:00        ...          realDonaldTrump
2     2019-02-26 18:08:00        ...          realDonaldTrump
3     2019-02-26 04:50:00        ...          realDonaldTrump

Я попробовал следующую команду:

df.created_at=df.created_at.replace(second=0)

К сожалению, я получаю эту ошибку:

TypeError: replace() got an unexpected keyword argument 'second'

Есть кто-то, кто знает, как я получаю желаемоерезультат с заменой секунд на 00?

Ответы [ 2 ]

0 голосов
/ 04 марта 2019

Это немного «жестко закодировано», но может работать:

df.created_at=df.created_at[:-3]+":00"
0 голосов
/ 04 марта 2019

Использование Series.dt.floor с минутами:

df.created_at=df.created_at.dt.floor('T')
#alternative
#df.created_at=df.created_at.dt.floor('min')
print (df)
           created_at user_screen_name
0 2019-02-27 05:36:00  realDonaldTrump
1 2019-02-27 05:31:00  realDonaldTrump
2 2019-02-26 18:08:00  realDonaldTrump
3 2019-02-26 04:50:00  realDonaldTrump
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...