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

如何在pandas中自动将列的长行值替换为短名称

Pandas长文本列值批量缩写解决方案

以下是三种常用的实现方式,可根据你的需求选择:

1. 自定义映射替换(可控性最高)

适合需要指定固定短名称的场景,使用map()方法实现:

import pandas as pd

# 替换为你实际的长文本列名
long_col = "你的长文本列名"

# 定义长文本与短名称的对应关系
name_mapping = {
    "完整长文本内容1": "短名称1",
    "完整长文本内容2": "短名称2",
    # 按需补充所有映射对
}

# 生成新的短名称列,也可以直接覆盖原列
df["short_name"] = df[long_col].map(name_mapping).fillna("其他")

末尾的fillna("其他")用于处理未在映射中定义的长文本,可自行调整默认值。

2. 自动生成序列短名称

适合长文本类型多、不需要自定义名称的场景,自动为唯一长文本分配统一序号:

# 自动生成「类型+序号」格式的短名称,相同长文本会分配同一个序号
df["short_name"] = "类型" + df["你的长文本列名"].factorize()[0].astype(str)

3. 提取文本特征生成短名称

如果长文本有固定格式规则,可以直接提取核心部分作为短名称:

  • 截取前N个字符(示例取前6个字符,可自行调整长度):
    df["short_name"] = df["你的长文本列名"].str[:6]
    
  • 按分隔符提取核心字段(示例长文本用-分隔,取第一个片段):
    df["short_name"] = df["你的长文本列名"].str.split("-").str[0]
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 16:27:05