У меня есть список столбцов, которые мне нужно преобразовать в дату без потери формата типа даты. Для преобразования в дату можно использовать df1[col] = df1[col].astype('datetime64[ns]')
, который дает фактический тип даты, но если я хочу, чтобы он был типа '%m/%d/%Y'
, здесь часто предлагается сделать следующее: df1[col] = df1[col].dt.strftime('%m/%d/%Y')
, но в Excel это теперь распознается кактип строки, а не тип даты.
Я просмотрел много сообщений и искал в Интернете, чтобы найти решение этой проблемы, и оно должно быть.
Вот мой код, который дает неправильные типы, которые мне не нужны:
convert_date_cols = ['CutoffDate', 'ModEffectiveDate', 'IOExpirationDate', 'FirstRateAdjustmentDate', 'GF_Service_Xfer_Date',
'BPODate', 'FirstPaymentDate', 'MaturityDate', 'NextRateAdjustmentDate', 'NextPaymentAdjustmentDate',
'ModFirstPayDate', 'ModMaturityDate', 'REO Date', 'FCDate', 'BK Date', 'Fico Score Date']
for i, col in enumerate(convert_date_cols):
df1[col] = df1[col].astype('datetime64[ns]')
df1[col] = df1[col].dt.strftime('%m/%d/%Y')