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

调用df.describe()和df.info()触发TypeError的解决方案咨询

解决pandas调用df.describe()/df.info()时的TypeError问题

可能根源

报错栈指向select_dtypes方法中创建Series的类型不匹配问题,核心原因大概率是pandas与numpy版本不兼容:你使用的pandas 0.25.1是2019年的老版本,而numpy 1.21.4的API更新会触发老pandas内部逻辑报错。此外也不排除csv数据本身存在列名格式异常等问题。

分步解决办法

1. 验证版本是否生效

先确认当前环境的库版本是否和你升级的一致,运行以下代码:

import pandas as pd
import numpy as np
print("Pandas版本:", pd.__version__)
print("Numpy版本:", np.__version__)

如果版本不符,说明升级未生效,强制重新安装:

pip install --force-reinstall pandas==0.25.1 numpy==1.21.4

2. 修复版本兼容性

最直接的解决方式是调整到兼容的版本组合:

  • 方案A:降级numpy适配老pandas
    pandas 0.25.1推荐搭配numpy 1.19.x版本,执行:
    pip install numpy==1.19.5
    
  • 方案B:升级pandas适配numpy 1.21.4
    升级到pandas 1.3.5(经测试与numpy 1.21.4完全兼容):
    pip install pandas==1.3.5
    

3. 排查数据文件异常

若版本调整后仍报错,检查csv数据是否存在问题:

  • 打印列名和数据类型,确认是否有异常:
    print("数据列名:", df.columns.tolist())
    print("各列数据类型:\n", df.dtypes)
    
  • 若列名含空格、特殊字符,先清理列名再尝试:
    import re
    df.columns = [re.sub(r'[^a-zA-Z0-9_]', '_', col.strip()) for col in df.columns]
    

4. 用干净虚拟环境测试

若当前环境存在库冲突,创建虚拟环境重新安装:

# 创建虚拟环境
python -m venv clean_env
# Windows激活环境
clean_env\Scripts\activate
# Linux/macOS激活环境
source clean_env/bin/activate
# 安装兼容版本
pip install pandas==1.3.5 numpy==1.21.4
# 运行测试代码

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 08:45:55