как я могу изменить int64 на Datetime во фрейме данных pandas?

#python #pandas

#python #pandas

Вопрос:

я использую для изменения типа данных int64 на тип времени даты с помощью метода ‘to_datetime’, но результат слишком странный.

 df['DEATH_YMD'] = pd.to_datetime(df["DEATH_YMD"], unit='s')
  

результат таков.

PT_SBST_NO P00001 1970-01-01 00:00:00.020160515 P00002 1970-01-01 00:00:00.020091001 P00003 1970-01-01 00:00:00.020081031 P00004 1970-01-01 00:00:00.020141105 P00005 1970-01-01 00:00:00.020110324 Имя: DEATH_YMD, dtype : дата-время 64[ns]

но я хочу создать новые столбцы, как показано ниже

20160515
20091001

как мне это сделать?

 original data

df['DEATH_YMD'].value_counts()

20130704    18
20130711    18
20130703    18
20130708    18
20130709    18
            ..
20140513     1
20161115     1
20081022     1
20081014     1
20160516     1
Name: DEATH_YMD, Length: 1811, dtype: int64
  

Комментарии:

1. Можете ли вы показать исходные данные?

2. как мне обновить в stack overflow? Я не очень хорошо умею этим пользоваться : (

3. вы можете нажать изменить

4. это правильно для исходных данных?

Ответ №1:

Вам нужно указать формат:

 df['DEATH_YMD'] = pd.to_datetime(df["DEATH_YMD"], format='%Y%m%d')
  

unit Параметр используется, когда число является отметкой времени.