如何将该日期和时间格式转换为datetime?

时间:2019-04-12 21:46:27

标签: python csv datetime dataframe

我需要通过读取.csv文件将某种日期和时间格式转换为datetime。值在“ Date_start”和“ Date_end”列中。该文件有〜8760行,但初始日期格式为“ dd / mm / yyyy hh:mm”,但沿数据的某个位置更改为“ dd-mm-yyyy hh:mm”。

我几乎尝试了所有东西。 pd.to_datetime不断询问映射。基于d.time和d.date的新列会删除后一种格式的日期,因为它带有'-'。

[{'X1': 'A1 value',
  'X2': 'A2 Value',
  'X3': '0',
  'X4': '245',
  'X5': 'some value'},
 {'X1': 'A1 value2',
  'X2': 'A2 Value2',
  'X3': '1',
  'X4': '225',
  'X5': 'some value2'}]

1 个答案:

答案 0 :(得分:1)

您可以用连字符(/)代替正斜杠(-),然后照常转换为datetime

pd.to_datetime(df['Date_end'].str.replace('/', '-'), errors='coerce')

8755   2017-12-31 20:00:00
8756   2017-12-31 21:00:00
8757   2017-12-31 22:00:00
8758   2017-12-31 23:00:00
8759   2018-01-01 00:00:00
Name: Date_end, dtype: datetime64[ns]

反之亦然(连字符到正斜杠)。