cal*_*Guy 5 python numpy concatenation pandas
假设我有以下数据框:
pd.DataFrame({'col1': ["a", "a", np.nan, np.nan, np.nan],
'override1': ["b", np.nan, "b", np.nan, np.nan],
'override2': ["c", np.nan, np.nan, "c", np.nan]})
col1 override1 override2
0 a b c
1 a NaN NaN
2 NaN b NaN
3 NaN NaN c
4 NaN NaN NaN
Run Code Online (Sandbox Code Playgroud)
有没有办法将 3 列折叠成一列,其中override2overrides override1,它 overrides col1,但是,如果存在 NaN,则要保留前面的值?另外,我主要是在寻找一种不必制作额外专栏的方法。我真的在寻找内置的 pandas 解决方案。
这是我正在寻找的输出:
collapsed
0 c
1 a
2 b
3 c
4 NaN
Run Code Online (Sandbox Code Playgroud)