数据帧混合日期格式

2024-10-03 21:25:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图分析一些我从在线csv文件中提取的新冠病毒数据-https://api.covid19india.org/csv/latest/tested_numbers_icmr_data.csv

我将其缩减为只使用Tested As Of和Total Samples Tested列

df = pd.read_csv("tested_numbers_icmr_data.csv")
df = tested[['Total Samples Tested', 'Tested As Of']]

然后重命名日期列,转换为datetime并将其设置为我的索引

df = df.rename(columns={'Tested As Of':'Date'})
df['Date'] = pd.to_datetime(df['Date'])
df = df.set_index('Date')

我打印数据框以检查是否一切都如预期的那样,并注意到一些日期格式都混淆了。 以下是一个片段:

2020-10-04              161330.0
2020-11-04              179374.0
2020-12-04              195748.0
2020-04-13              217554.0
2020-04-14              244893.0
2020-04-15              274599.0
2020-04-16              302956.0

数据帧中到处都是这种不一致。有解决办法吗?由于这种混合格式,一些日期似乎丢失了,而实际上格式是完全错误的

更新:我手动检查了文件,所有条目的格式都正确且一致


Tags: 文件ofcsv数据dfdatadateas
2条回答

结果,我只是缺少了一个格式语句

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

如果原始文件中日期的格式一致,则可以在pd.to_datetime()函数中提供“format”参数。它遵循与Python的datetime模块相同的格式规则:https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes

因此,在您的情况下可能是pd.to_datetime(df['Date'],format=“%Y-%m-%d”)

相关问题 更多 >