gpt4 book ai didi

python - 将文件头解析为 Python/pandas 中的日期对象

转载 作者:太空宇宙 更新时间:2023-11-03 15:36:32 24 4
gpt4 key购买 nike

如何将 csv 文件中的标题解析为日期?我尝试在 pandas.read_csv 函数中使用一些参数:

import pandas as pd
data = pd.read_csv(path, header=1, infer_datetime_format=1, parse_dates=True)

但是,除了第 2 到第 6 列的标题之外,数据中没有任何内容被格式化为日期。

我尝试使用索引来parse_dates,例如parse_dates=columns[2,3,4,5,6],但它会引发错误,因为 columns 在此阶段无法识别。

原始 csv:

Name,Adm.,1980-12-31,1992-12-31,2002-05-20,2011-03-31,2015-12-31,Area
Aleksandrów Łódzki,LOD,"17.000","20.251","20.220","21.085","21.354",1382
Andrychów,MAL,"19.400","23.144","22.187","21.530","20.940",1033

阅读以下内容:

print(data[0:2])

Aleksandrów Łódzki LOD 17.000 20.251 20.220 21.085 21.354 1382
Andrychów MAL 19.400 23.144 22.187 21.530 20.940 1033 1
Augustów POD 24.300 29.089 29.705 30.802 30.400 8090 2

编辑

对不起。我想删除这个帖子。我的 csv 文件中有错误。标题应如下所示:

Miasto,Adm,“1980-12-31”,“1992-12-31”,“2002-05-20”,“2011-03-31”,“2015-12-31”,区域

即,日期中带有引号。然后一切就自动好了。我的错。对于那些无法访问 csv 文件的人来说,这可能是一个挑战。哈哈。

最佳答案

实现您想要的效果的一种方法是在读取 csv 文件后将列重命名为:

df = pd.read_csv(path, infer_datetime_format=1, parse_dates=True)
columns = {}
for col in df.columns:
try:
columns[col] = pd.to_datetime(col, infer_datetime_format=True)
except ValueError:
pass
df.rename(columns=columns, inplace=True)

关于python - 将文件头解析为 Python/pandas 中的日期对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42472418/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com