使用特定条件连接 pandas 中的列

Joining columns in pandas with specific condition

我的 DataFrame 如下所示:

Main_column column_1 column_2 column_3 column_4
qw          qw       NaN      rt       NaN
we          qe       NaN      qe       NaN
er          NaN      NaN      NaN      NaN
NaN         NaN      cg       NaN      NaN
NaN         NaN      NaN      vb       bn

DF 应如下所示:

Main_column column_1 column_2 column_3 column_4 new_column
qw          qw       NaN      rt       NaN      qw
we          qe       NaN      qe       NaN      we
er          NaN      NaN      NaN      NaN      er
NaN         NaN      cg       NaN      NaN      cg
NaN         NaN      NaN      vb       bn       vb

所以基本上我需要根据 privies one 的值创建一个新列。有两件事需要考虑。

  1. 如果“Main_column”中有一个值,“new_column”中应该有相同的值。
  2. 如果“Main_column”中没有值,我们应该从下一列中取值(如果有的话)。

你知道怎么做吗?

此致

使用-

df['new_column'] = df['Main_column'].copy()
for col in df.columns: 
    df['new_column'] = df['new_column'].fillna(df[col])

输出

0    qw
1    we
2    er
3    cg
4    vb
Name: Main_column, dtype: object