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

如何在PySpark中将多个列的数据合并为单个列

pandas DataFrame两列合并为单列实现方案

根据合并场景的不同,可选择对应操作方法:

1. 字符串拼接合并(适用于需要把两列文本内容拼接为一个新文本值的场景)

  • 基础拼接(无分隔符)
import pandas as pd
# 假设df1包含col1、col2两列
df2 = df1.copy()
df2['merged_col'] = df2['col1'] + df2['col2']
  • 带分隔符拼接,同时处理空值
# sep指定分隔符,na_rep指定空值替换内容
df2['merged_col'] = df2['col1'].str.cat(df2['col2'], sep='_', na_rep='')
  • 非字符串列先转格式再拼接
df2['merged_col'] = df2['col1'].astype(str) + '_' + df2['col2'].astype(str)

2. 数值列求和合并(适用于两列为数值类型,需要求和得到新值的场景)

# 方法1:直接相加
df2['merged_col'] = df2['col1'] + df2['col2']
# 方法2:按行求和
df2['merged_col'] = df1[['col1', 'col2']].sum(axis=1)

3. 纵向堆叠为单列(适用于需要把两列的所有值上下摞到一起,形成更长单列的场景)

df2 = pd.DataFrame({
    'merged_col': pd.concat([df1['col1'], df1['col2']], ignore_index=True)
})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 05:36:04