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

使用Pandas统计DataFrame每行Participants列的参与者人数

如何为DataFrame新增一列统计Participants列的参与者数量?

根据你提供的invoice_df数据,Participants列存在两种格式:部分是原生列表对象,部分是被引号包裹的字符串形式伪列表。以下是对应解决方案:

情况1:Participants列已为列表类型

如果Participants存储的是Python列表,直接用apply(len)统计每行列表的长度即可:

invoice_df['Participant_Count'] = invoice_df['Participants'].apply(len)

情况2:Participants列为字符串类型

若Participants是类似['David Bishop']或带双引号的"['Anthony Emerson' ...]"格式的字符串,需要先将其解析为列表,再统计数量:

  1. 导入ast模块用于安全解析字符串为列表
  2. 处理字符串并转换为列表
  3. 新增统计列

代码示例:

import ast

# 处理字符串格式的伪列表,先去除可能的外层双引号,再解析为列表
invoice_df['Participants'] = invoice_df['Participants'].apply(
    lambda x: ast.literal_eval(x.strip('"')) if isinstance(x, str) else x
)

# 新增参与者数量列
invoice_df['Participant_Count'] = invoice_df['Participants'].apply(len)

执行后,invoice_df会新增Participant_Count列,对应每行的参与者人数,比如第一行值为1,第六行值为3,第五行值为2,以此类推。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 02:00:38