You need to enable JavaScript to run this app. 如何给Pandas DataFrame的Skill列每个技能随机添加等级标签
优惠活动
大模型
产品
解决方案
定价
更多

如何给Pandas DataFrame的Skill列每个技能随机添加等级标签

错误原因
  1. 代码存在语法错误:df[Skill']缺少前单引号,运行会直接触发语法报错。
  2. 逻辑问题:没有拆分技能字符串里的单个技能项,直接对整段拼接好的技能字符串追加等级,所以只会在整段末尾加一个等级,不符合每个技能单独加等级的要求。
实现代码

首先导入依赖:

import pandas as pd
import random

方案1:自定义函数实现(可读性更高)

score = ['low', 'medium', 'high']

def add_skill_level(skill_str):
    # 按分隔符拆分出单个技能
    skill_list = skill_str.split(', ')
    # 遍历每个技能拼接随机等级
    skill_with_level = [f"{skill}:{random.choice(score)}" for skill in skill_list]
    # 拼接回原格式的字符串
    return ', '.join(skill_with_level)

df['Skill'] = df['Skill'].apply(add_skill_level)

方案2:lambda单行实现

score = ['low', 'medium', 'high']
df['Skill'] = df['Skill'].apply(lambda x: ', '.join([f"{s}:{random.choice(score)}" for s in x.split(', ')]))
效果验证

假设原Skill列的值为python, sql, java,处理后输出示例:python:high, sql:low, java:medium,符合预期。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 12:36:03