Krz*_*ski 9 python updating dataframe pandas
目标是通过将另一列中的一列中的所有值设置为NaN来维持两列之间的关系.
拥有以下数据框:
df = pd.DataFrame({'a': [np.nan, 2, np.nan, 4],'b': [11, 12 , 13, 14]})
a b
0 NaN 11
1 2 12
2 NaN 13
3 4 14
Run Code Online (Sandbox Code Playgroud)
从维护列的关系a,以列b,所有NaN值都在更新的结果:
a b
0 NaN NaN
1 2 12
2 NaN NaN
3 4 14
Run Code Online (Sandbox Code Playgroud)
可以实现所需行为的一种方法是:
df.b.where(~df.a.isnull(), np.nan)
Run Code Online (Sandbox Code Playgroud)
有没有其他方法来维持这种关系?
你可以使用mask上NaN的行.
In [366]: df.mask(df.a.isnull())
Out[366]:
a b
0 NaN NaN
1 2.0 12.0
2 NaN NaN
3 4.0 14.0
Run Code Online (Sandbox Code Playgroud)
对于,NaN使用任何跨列的 存在df.mask(df.isnull().any(1))
| 归档时间: |
|
| 查看次数: |
344 次 |
| 最近记录: |