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

如何在pandas DataFrame中按行拼接字符串并生成新行?

在pandas中按行拼接字符串生成新行

要实现将指定行(如索引3和4)的对应单元格字符串拼接,生成目标Series,可通过以下两种方式完成:

示例数据准备

先构造匹配需求的示例DataFrame:

import pandas as pd

df = pd.DataFrame(
    [['Brand', 'RIVIAN', 'LUCID Air'],
     ['Model', 'RIT', 'Dream Edition']],
    index=[3, 4],
    columns=['Col1', 'Col2', 'Col3']
)

方法1:列表推导式逐元素拼接

直接遍历两行的对应元素,拼接后转为Series:

row3 = df.loc[3]
row4 = df.loc[4]

new_row = pd.Series([f"{a} {b}" for a, b in zip(row3, row4)])

输出结果:

0    Brand Model
1    RIVIAN RIT
2    LUCID Air Dream Edition
dtype: object

方法2:使用str.cat()向量化拼接

如果行内所有元素都是字符串(非字符串需先通过astype(str)转换),用pandas内置方法更高效:

# 确保元素为字符串类型
row3 = row3.astype(str)
row4 = row4.astype(str)

new_row = row3.str.cat(row4, sep=' ')

该方法与列表推导式结果完全一致,且更贴合pandas的向量化操作习惯。

示例示意图

原DataFrame与拼接结果

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 10:35:23