为日期时间和布尔值指定pandas.read_csv的正确数据类型

我正在将csv文件加载到熊猫数据帧中。对于每个列,如何使用dtype参数指定它包含的数据类型

  • 我可以使用数字数据(底部的代码)
  • 但是如何指定时间数据
  • 分类数据,如因子或布尔值?我尝试了np.bool\ucode>和pd.tslib.Timestamp但运气不佳

代码:

将熊猫作为pd导入
将numpy作为np导入
df=pd.read_csv(<文件名>,数据类型={'A':np.int64,'B':np.float64})

read_csv有很多选项,可以处理您提到的所有情况。您可能希望尝试dtype={'A':datetime.datetime},但通常不需要dtype,因为pandas可以推断类型

对于日期,则需要指定解析日期选项:

解析日期:布尔值、整数或名称列表、列表列表或dict
keep_date_col:布尔值,默认为False
日期分析器:函数

一般来说,要转换布尔值,您需要指定:

代码> TruteOxValue:将列表值视为真值
伪值:考虑假的列表值

将列表中的任何值转换为布尔值true/false。对于更一般的转换,您很可能需要

转换器:用于转换某些列中的值的可选函数。键可以是整数或列标签

尽管很密集,但请在此处查看完整列表:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.io.parsers.read_csv.html

发表评论