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

如何从Pandas数据框的字典列表列提取键以Past开头的字典?

筛选Pandas数据框中字典列表列的指定前缀字典

实现方案

针对你的需求,直接使用apply结合列表推导式就能高效完成筛选,无需复杂操作。

示例代码

import pandas as pd

# 构造示例数据
df = pd.DataFrame({
    'names': [
        [{'Open-pending':123}, {'Past-Pending':456}, {'Open-Closed':789},{'Past-Closed': 453}]
    ]
})

# 生成目标列:筛选键以Past开头的字典
df['new_names'] = df['names'].apply(
    lambda lst: [d for d in lst if any(k.startswith('Past') for k in d)]
)

# 输出结果
print(df['new_names'])

代码说明

  • df['names'].apply(...):对names列的每一个列表元素执行筛选逻辑
  • 列表推导式[d for d in lst if ...]:遍历列表中的每个字典,只保留符合条件的项
  • any(k.startswith('Past') for k in d):检查字典中是否存在以Past开头的键,满足则保留该字典

执行后得到的new_names列结果如下:

0    [{'Past-Pending': 456}, {'Past-Closed': 453}]
Name: new_names, dtype: object

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 17:35:30