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

如何在DataFrame的name列添加后缀以区分不同来源数据?

给DataFrame指定列批量添加后缀的实现方法

完全可以实现给DataFrame的指定列(比如name列)所有值添加后缀并保留原内容,以下是具体操作方案:

单个DataFrame处理

假设你有一个名为df的DataFrame,想要给name列添加_sample1后缀,直接对列执行字符串拼接即可:

import pandas as pd

# 示例原始DataFrame
df = pd.DataFrame({
    'name': ['ENSG00000135821', 'ENSG00000182667', 'ENSG00000155495', 'ENSG00000198959'],
    'id': [2752, 50863, 9947, 7052],
    'sym': ['GLUL', 'NTM', 'MAGEC1', 'TGM2']
})

# 添加后缀
df['name'] = df['name'] + '_sample1'

处理后的DataFrame效果如下:

name    id      sym
0  ENSG00000135821_sample1  2752    GLUL
1  ENSG00000182667_sample1 50863    NTM
2  ENSG00000155495_sample1  9947  MAGEC1
3  ENSG00000198959_sample1  7052    TGM2

多数据源合并场景

如果有多个来自不同数据源的DataFrame,需要分别添加不同后缀后合并,可按以下方式操作:

# 假设已有df1、df2、df3、df4四个数据源DataFrame
dfs = [df1, df2, df3, df4]

# 遍历添加对应后缀
for idx, single_df in enumerate(dfs, start=1):
    single_df['name'] = single_df['name'] + f'_sample{idx}'

# 合并所有处理后的DataFrame
merged_df = pd.concat(dfs, ignore_index=True)

合并后的DataFrame示例:

name    id      sym
0  ENSG00000135821_sample1  2752    GLUL
1  ENSG00000135821_sample2  2752    GLUL
2  ENSG00000135821_sample3  2752    GLUL
3  ENSG00000135821_sample4  2752    GLUL

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 19:41:56