合并熊猫中不相交的列

时间:2018-06-27 15:07:55

标签: python pandas

我有一个非常简单的熊猫问题,涉及合并两个系列。我在数据框中有两个系列,它们与此相似:

     Column1     Column2
0        Abc         NaN
1        NaN         Abc
2        Abc         NaN
3        NaN         Abc
4        NaN         Abc

答案可能最终会是一个非常简单的.merge()或.concat()命令,但是我试图得到这样的结果:

     Column1
0        Abc
1        Abc
2        Abc
3        Abc
4        Abc

这个想法是,对于每一行,在Column1,Column2中都有一个数据字符串,但从没有。我花了大约10分钟的时间在StackOverflow以及Google上寻找答案,但是找不到类似的问题完全适用于我想做的事情。

我意识到,这个问题很大一部分是由于我对Pandas必须将系列和数据框粘贴在一起的三个功能的不了解。很感谢任何形式的帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

您可以只使用pd.Series.fillna

df['Column1'] = df['Column1'].fillna(df['Column2'])

此处合并或concat不适用;它们主要用于组合基于标签的数据框或序列。

groupbyfirst一起使用

df.groupby(df.columns.str[:-1],axis=1).first()
Out[294]: 
  Column
0    Abc
1    Abc
2    Abc
3    Abc
4    Abc

或:

`ndf = pd.DataFrame({'Column1':df.fillna('').sum(1)})`