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

如何从pandas DataFrame的对象数组中提取数值列表元素

从Pandas DataFrame单元格提取列表数据的解决方法

核心原因

你提取单元格时得到的是Series对象(而非原始列表),或形状为(1,)的object数组,本质是索引方式导致返回了容器而非单个元素。

直接提取原始列表的方法

如果目标是第n行、列名为abc的单元格:

  • 用.iloc提取单个元素:
target_list = df['abc'].iloc[n]
  • 用.loc按行索引提取:
target_list = df.loc[n, 'abc']

以上两种方式直接返回单元格内的原始列表[1,3,4,6...],无需额外处理。

针对已获取的Series对象处理

如果已经拿到了带Name和dtype的Series(比如执行了s = df['abc'].iloc[[n]]),可以通过以下方式提取列表:

# 方法1:用.item()提取单个元素
target_list = s.item()

# 方法2:再次索引单个元素
target_list = s.iloc[0]

针对已获取的形状为(1,)的object数组处理

如果已经拿到了array([array([1,3,4,6...])], dtype=object)这类数组,直接索引第0位即可拿到内部的数组/列表:

# 提取内部数组
target_array = arr[0]

# 转成普通列表
target_list = list(target_array)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 17:54:59