通过pandas dataframe中的另一个列内容填充NaN列

Den*_*tin 3 python pandas

我有一个数据框,其中一列有很多NaN值.当NaN在列中时,我需要通过另一个列值更新这些值.

    One    Two
0    10    21

1    11    NaN

2    12    25
Run Code Online (Sandbox Code Playgroud)

我想要这样的结果

    One    Two

0    10    21

1    11    **11**

2    12    25
Run Code Online (Sandbox Code Playgroud)

请帮助我在第二列中进行切片合成,并让Nafill检测从第一列复制值.

这是创建第一个矩阵的代码:

 df = pd.DataFrame({'One' : [10, 11, 12], 'Two' : [21, np.NAN, 25]})
Run Code Online (Sandbox Code Playgroud)

jor*_*ris 5

您可以使用fillna该列:

In [4]: df['Two'].fillna(df['One'])
Out[4]:
0    21
1    11
2    25
Name: Two, dtype: float64
Run Code Online (Sandbox Code Playgroud)

所以要实际更改列: df['Two'] = df['Two'].fillna(df['One'])