python - 将 CSV 读入 Pandas 时推断日期的最有效方法是什么?
问题描述
目标:将 csv 文件读入 Pandas 数据框,而不必在日期列处手动调用
这是我目前使用的代码,它在我的日期列上提供了一个 'O' 的 dtype:
df = pd.read_csv(r"D:\time_stamp_ex.csv",
parse_dates=False,
infer_datetime_format=True,
date_parser=pd.to_datetime)
df
由于您没有该文件,因此这不是很有帮助,因此这是一个数据框片段,它完全生成了我的 csv 文件中的内容:
d = {'time_stamp': ['9/22/2017','9/15/2018','8/7/2017'],
'category': ['A1','A2','B1'],
'number':[12345678,12345678,12345678]}
df = pd.DataFrame(data=d)
df
阅读Pandas 文档,我没有发现我遗漏了什么,但我愿意接受这是一个简单的答案。
解决方案
Pandas 只会尝试infer_datetime_format
你在parse_dates
. 您目前将此设置为False
。您需要告诉它 csv 文件中的哪些列包含日期。
我不确定这是否回答了您的问题,因为我不确定“不必在日期列手动调用”是什么意思。您的意思是您不想将日期列与读取文件分开转换,或者您不想告诉read_csv
哪些列包含日期?
推荐阅读
- java - 通过更改列表类型进行 Android LiveData 转换
- java - Java 到 Kotlin 以不同的方法访问类特定的变量
- laravel - 方法链接不存在 - laravel 5.4
- r - R - 在数据框中添加计数表
- unity3d - 传感器融合对于实现手机游戏是否必不可少?
- django - 无法将 django 应用程序推送到 Heroku
- twitter - 如何使用 Twitter API 从某个国家/地区获取所有推文?
- c - 结构数组的最后一个元素 - C
- spring - 创建 URL 中定义的名称为“BitronixTransactionManager”的 bean 时出错
- python - 根据csv文件中的主键计算数量的平均值