Pandas read_csv: 解决 'parse_dates' 中缺少列的问题

在使用 Pandas 库的 read_csv 函数读取 CSV 文件时,你可能遇到过 parse_dates 参数中缺少列的错误。这个错误通常发生在你希望将特定列解析为日期时间格式时。

原始代码:

stock_sales = pd.read_csv(
    comp_dir / 'train.csv',
    usecols=['Data_ID', 'Time', 'Close_Price'],
    dtype={
        'Data_ID': 'int',
        'Close_Price': 'float32',
    },
    parse_dates=['date'],
    infer_datetime_format=True,
)

错误信息:

Missing column provided to 'parse_dates': 'date'

原因:

这个错误意味着你的 CSV 文件中没有名为 'date' 的列,而你却在 parse_dates 参数中指定了它。

解决方案:

你需要确保 parse_dates 参数中指定的列名与 CSV 文件中的列名一致。在本例中,应该是 'Time' 列。

改正后的代码:

stock_sales = pd.read_csv(
    comp_dir / 'train.csv',
    usecols=['Data_ID', 'Time', 'Close_Price'],
    dtype={
        'Data_ID': 'int',
        'Close_Price': 'float32',
    },
    parse_dates=['Time'],
    infer_datetime_format=True,
)

通过将 parse_dates 参数中的 'date' 改为 'Time',代码就可以正确解析时间数据了。

Pandas read_csv: 解决 'parse_dates' 中缺少列的问题

原文地址: https://www.cveoy.top/t/topic/ocaH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录