使用特定条件连接 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 的值创建一个新列。有两件事需要考虑。
- 如果“Main_column”中有一个值,“new_column”中应该有相同的值。
- 如果“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
我的 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 的值创建一个新列。有两件事需要考虑。
- 如果“Main_column”中有一个值,“new_column”中应该有相同的值。
- 如果“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