You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Pandas read_csv()不识别date_format参数问题求助

Pandas read_csv() 报date_format参数错误的排查与解决

问题现象

此前可正常运行的Jupyter Notebook,近期未升级任何组件,突然出现报错:read_csv() got an unexpected keyword argument 'date_format'

报错代码

SYMH = pd.read_csv('2012-11-13_SYMH.txt', delimiter='\s+', parse_dates=['DATE', 'TIME'], date_format=['%Y-%m-%d', '%H:%M:%S.%f'])
SYMH['Date'] = pd.to_datetime(SYMH['DATE']+' '+SYMH['TIME'], format="%Y-%m-%d %H:%M:%S.%f")
SYMH.drop(['DATE', 'TIME'], axis=1, inplace=True)

AE = pd.read_csv('2012-11-13_AE.txt', delimiter='\s+', parse_dates=['DATE', 'TIME'], date_format=['%Y-%m-%d', '%H:%M:%S.%f'])
AE['Date'] = pd.to_datetime(AE['DATE']+' '+AE['TIME'], format="%Y-%m-%d %H:%M:%S.%f")
AE.drop(['DATE', 'TIME'], axis=1, inplace=True)

错误日志

TypeError                                 Traceback (most recent call last)
Cell In[2], line 1
----> 1 SYMH = pd.read_csv('2012-11-13_SYMH.txt', delimiter='\s+', parse_dates=['DATE', 'TIME'], date_format=['%Y-%m-%d', '%H:%M:%S.%f'])
      2 SYMH['Date'] = pd.to_datetime(SYMH['DATE']+' '+SYMH['TIME'], format="%Y-%m-%d %H:%M:%S.%f")
      3 SYMH.drop(['DATE', 'TIME'], axis=1, inplace=True)

File ~/anaconda3/envs/solarwind/lib/python3.10/site-packages/pandas/util/_decorators.py:211, in deprecate_kwarg.<locals>._deprecate_kwarg.<locals>.wrapper(*args, **kwargs)
    209     else:
    210         kwargs[new_arg_name] = new_arg_value
--> 211 return func(*args, **kwargs)

File ~/anaconda3/envs/solarwind/lib/python3.10/site-packages/pandas/util/_decorators.py:331, in deprecate_nonkeyword_arguments.<locals>.decorate.<locals>.wrapper(*args, **kwargs)
    325 if len(args) > num_allow_args:
    326     warnings.warn(
    327         msg.format(arguments=_format_argument_list(allow_args)),
    328         FutureWarning,
    329         stacklevel=find_stack_level(),
    330     )
--> 331 return func(*args, **kwargs)

TypeError: read_csv() got an unexpected keyword argument 'date_format'

疑惑与已尝试操作

  • 疑惑:错误日志中的deprecate_kwarg相关调用是否意味着date_format参数已被弃用?但Pandas官方文档明确标注该参数可用。
  • 已尝试:重启内核、重启IDE、更换解释器、升级Pandas,均无效;此前出现同类问题时重启内核即可修复,此次失效。

问题分析与解决方法

  1. 版本兼容性问题:date_format是Pandas较新版本新增的参数,若当前运行环境的Pandas版本被意外降级(比如依赖冲突导致),就会出现参数不识别的报错。可以执行print(pd.__version__)确认版本,若版本过低,重新安装指定版本(如pip install pandas==2.0.0)即可。
  2. 替代实现方案:暂时移除read_csv中的parse_dates和date_format参数,先读取原始文本列,再用pd.to_datetime完成日期解析,代码调整如下:
    SYMH = pd.read_csv('2012-11-13_SYMH.txt', delimiter='\s+')
    SYMH['Date'] = pd.to_datetime(SYMH['DATE'] + ' ' + SYMH['TIME'], format="%Y-%m-%d %H:%M:%S.%f")
    SYMH.drop(['DATE', 'TIME'], axis=1, inplace=True)
    
    AE = pd.read_csv('2012-11-13_AE.txt', delimiter='\s+')
    AE['Date'] = pd.to_datetime(AE['DATE'] + ' ' + AE['TIME'], format="%Y-%m-%d %H:%M:%S.%f")
    AE.drop(['DATE', 'TIME'], axis=1, inplace=True)
    

内容的提问来源于stack exchange,提问作者Kajmunso

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 22:10:27