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

如何判断对象是Pandas.DataFrame还是Pandas.Series?

判断Pandas对象是DataFrame还是Series的最佳方法

1. 最推荐:使用isinstance()(Python标准类型检查)

这是Python官方推荐的类型判断方式,也是最可靠的方案,能正确识别继承自DataFrame/Series的子类对象:

import pandas as pd

# obj 为待判断的目标对象
if isinstance(obj, pd.DataFrame):
    print("该对象是 DataFrame 类型")
elif isinstance(obj, pd.Series):
    print("该对象是 Series 类型")
else:
    print("既不是 DataFrame 也不是 Series")

2. 其他可选方法

  • 通过维度ndim判断:DataFrame 是二维结构(ndim=2),Series 是一维结构(ndim=1)
if obj.ndim == 2:
    print("DataFrame")
elif obj.ndim == 1:
    print("Series")

注意:这种方法有局限性,若遇到其他一维/二维的Pandas对象(如已弃用的Panel)或自定义结构,可能出现误判。

  • 直接对比类型type():
if type(obj) == pd.DataFrame:
    print("DataFrame")
elif type(obj) == pd.Series:
    print("Series")

缺点:无法识别子类对象,比如自定义继承自DataFrame的类时,type()会返回自定义类而非pd.DataFrame,灵活性不如isinstance()。

总结

优先选择isinstance(),它兼顾了准确性与灵活性,是判断Pandas对象类型的最佳实践。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 10:15:41