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

Python实现按匹配规则从关联列表随机取值生成表格新列

解决方案

使用Python结合Pandas即可实现,性能支持大体量数据集,random.choice完全适配当前需求,具体实现如下:

实现逻辑

  • 先基于现有State和Food列构建映射字典,每个州对应其关联的所有去重后食物列表
  • 遍历State_New列,对每个州取值从映射字典中匹配对应的食物列表,随机选取一个值作为Food_New结果

完整代码

import pandas as pd
import random

# 读取数据,本地文件可替换为pd.read_csv("你的数据路径.csv")或pd.read_excel("你的数据路径.xlsx")
df = pd.DataFrame({
    'State': ['CA', 'CA', 'PA', 'PA', 'PA'],
    'Food': ['Burger', 'Fries', 'Soda', 'Pop', 'Soda'],
    'State_New': ['PA', 'CA', 'CA', 'PA', 'PA']
})

# 构建州-食物列表映射,自动对每个州的食物去重
state_food_map = df.groupby('State')['Food'].unique().to_dict()

# 生成随机的Food_New列
df['Food_New'] = df['State_New'].apply(lambda x: random.choice(state_food_map[x]))

# 如需保存结果执行下行代码
# df.to_csv("输出结果路径.csv", index=False)

print(df)

说明

  • 映射字典仅需一次全表扫描即可生成,后续每行的随机取值都是O(1)复杂度,百万级数据也可快速处理
  • 每次运行代码Food_New列的取值会自动随机变动,符合要求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.13 09:45:01