将多列合并为一个新列,同时保留原始列

Posted

技术标签:

【中文标题】将多列合并为一个新列,同时保留原始列【英文标题】:Combining multiple columns into one new column, while keeping the original column 【发布时间】:2020-12-23 20:29:12 【问题描述】:

我有下表,我试图将黄色的列合并到一列中,同时保留原始列;如果交互类型为 null,则突出显示的黄色列中的数据是根据它们所属的交互类型填充的,这意味着它不属于交互类型类别:

对于我如何处理此问题的任何帮助或指导,我将不胜感激

预期结果:

【问题讨论】:

你想要什么结果? 一个新列,仅当它不为空时才结合来自所有六列的信息,我在上面添加了另一个屏幕截图以获取预期结果 【参考方案1】:

这看起来像coalesce():

select t.*,
    coalesce(
        svc_proc, 
        interest, 
        transtypekey, 
        connectivity_name, 
        vm_entreprise_program,
        channels
    ) as interaction_details
from mytable t

coalesce() 返回参数列表的第一个非null 值。

【讨论】:

以上是关于将多列合并为一个新列,同时保留原始列的主要内容,如果未能解决你的问题,请参考以下文章

将多列合并为一列

Pandas - 在保留原始列的同时创建具有替换值的新列

将多列附加到df,同时保留其他列值[重复]

将数据框中的两列或多列合并为具有新名称的新列

如何有效地格式化SAS中多列的数据

【Excel】多列数据合并为一列