【发布时间】:2021-04-10 04:54:47
【问题描述】:
我正在尝试使 Pandas DataFrame 中的日期都具有相同的格式。目前我有 DataFrame 以两种格式存储日期。
“2017 年 6 月 8 日凌晨 2:15:00”和 2016-01-01T00:05:00
存储这些日期的列名是 INTERVAL_END。可以看到,其中一个日期是字符串,另一个是格式化日期。
我已尝试根据他们当前使用的日期来格式化日期:
df['format'] = 1
df.loc[df.INTERVAL_END.str.contains('/', na=False), 'format'] = 2
df.loc[df.format == 1, 'time'] = pd.to_datetime(df.loc[df.format == 1, 'INTERVAL_END'], format = '%Y-%m-%d %H:%M:%S').dt.strftime('%Y-%m-%d')
df.loc[df.format == 2, 'time'] = pd.to_datetime(df.loc[df.format == 2, 'INTERVAL_END'], format = '%d/%m/%Y %H:%M:%S %p').dt.strftime('%Y-%m-%d')
任何帮助都将非常感谢!
【问题讨论】:
-
您的意思是某些日期实际上在数据框本身中有引号吗?或者你只是在这里添加了引号?
-
有些元素实际上在DataFrame中有引号。