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

如何将指定格式数据转为Pandas DataFrame并筛选年龄大于50的key

使用Pandas筛选age大于50的key值

没问题!用Pandas来实现这个需求其实很直观,我给你一步步拆解具体做法:

步骤1:处理原始字符串,转换成Pandas可识别的结构

你的原始数据是一串连续的键值对字符串,咱们需要先把它拆分成每个key和对应的age配对,整理成字典列表的形式,这样才能方便创建DataFrame。

步骤2:编写代码实现筛选

直接上完整代码,每一步都有注释说明:

import pandas as pd

# 你的原始数据字符串
raw_data = 'key=IAfpK, age=58, key=WNVdi, age=64, key=jp9zt, age=47, key=0Sr4C, age=68, key=CGEqo, age=76, key=IxKVQ, age=79, key=eD221, age=29, key=XZbHV, age=32, key=k1SN5, age=88, key=4SCsU, age=65, key=q3kG6, age=33, key=MGQpf, age=13, key=Kj6xW, age=14, key=tg2VM, age=30, key=WSnCU, age=24, key=f1Vvz, age=46, key=dOS7A, age=72, key=tDojg, age=82, key=nZyJA, age=48, key=R8JTk, age=29, key=005Ot, age=66, key=HHROm, age=12, key=5yzG8, age=51, key=xMJ5D, age=38, key=TXtVu, age=82, key=Hz38B, age=84'

# 1. 拆分字符串为单个键值对列表:['key=IAfpK', 'age=58', ...]
key_value_pairs = raw_data.split(', ')
# 2. 把每个键值对拆成[键, 值]的形式:[['key', 'IAfpK'], ['age', '58'], ...]
split_pairs = [pair.split('=') for pair in key_value_pairs]
# 3. 每两个元素组成一组(一个key对应一个age),转换成字典列表
record_list = []
for i in range(0, len(split_pairs), 2):
    record = {
        'key': split_pairs[i][1],
        'age': int(split_pairs[i+1][1])  # 把age转成整数类型,方便后续数值筛选
    }
    record_list.append(record)

# 4. 创建DataFrame
df = pd.DataFrame(record_list)

# 5. 筛选age大于50的记录,提取key列并转成列表
filtered_keys = df[df['age'] > 50]['key'].tolist()

# 输出结果
print("age大于50的key值:", filtered_keys)

运行结果

执行代码后会得到符合条件的key列表:

['IAfpK', 'WNVdi', '0Sr4C', 'CGEqo', 'IxKVQ', 'k1SN5', '4SCsU', 'dOS7A', 'tDojg', '005Ot', '5yzG8', 'TXtVu', 'Hz38B']

补充说明

  • 把age转成整数类型是关键,这样才能正确进行数值比较筛选;
  • 使用Pandas的布尔索引df[df['age'] > 50]可以快速过滤出符合条件的行,再提取key列就完成了需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 19:37:32