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

如何在pandas DataFrame中合并同索引不同列的字符串

实现方案

核心逻辑为两步:先按index分组填充name列的空值,再将填充后的name与lst列用空格拼接即可。

具体实现代码如下:

import pandas as pd
import numpy as np

# 构造测试数据,空白name值统一替换为NaN方便处理
df = pd.DataFrame({
    "index": [0,0,0,1,1],
    "name": ["a", "", "", "", "b"],
    "lst": ["c","d","e","f","g"]
})
# 若你的空值是空白字符串,先执行转换为NaN
df["name"] = df["name"].replace("", np.nan)

# 按index分组,取组内第一个非空的name填充所有行,直接拼接得到combine列
df["combine"] = df.groupby("index")["name"].transform(lambda x: x.dropna().iloc[0]) + " " + df["lst"]

如果确认每个分组的非空name一定在组内首行/末行,也可以把transform里的lambda替换为更高效的'first'/'last'参数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 17:09:02