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

Pandas中df['column_name']与df[['column_name']]的工作原理解析

Pandas中df['列名']与df[['列名']]的返回逻辑解析

核心逻辑拆解

  • 用单个字符串作为索引(df['Yil']):pandas判定你要提取单列一维数据,返回Series结构——它只有索引和对应值,没有列表头,本质是带索引的一维数组。
  • 用包含单个字符串的列表作为索引(df[['Yil']]):pandas判定你要提取一组列(哪怕仅一列),返回DataFrame结构——这是二维表格,会保留列名表头,符合多列选择的返回规则。

你的运行结果验证

df['Yil']的输出(Series):

df['Yil']=
bir     2021
ikki    2020
19      2019
18      2018
17      2017
16      2016
15      2015
10      2010

df[['Yil']]的输出(DataFrame):

df[['Yil']]=
        Yil
bir     2021
ikki    2020
19      2019
18      2018
17      2017
16      2016
15      2015
10      2010
Name: Yil, dtype: int64 

底层实现逻辑

pandas的方括号索引(对应__getitem__魔法方法)做了参数类型分支:

  • 若传入参数是字符串,直接返回该列的Series;
  • 若传入参数是列表(无论长度),则返回包含这些列的DataFrame——因为列表语义上代表“多选列”,哪怕只选一列,也会用二维表格容器返回。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 01:20:38