#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
Параметр используется, когда число является отметкой времени.