小编jok*_*kol的帖子

根据其他列中的“NaN”值在 Pandas Dataframe 中创建一个新列

基于单独列中的 nan 值创建新列的最有效方法是什么(考虑到数据帧非常大)在 OTW 中,如果任何列NaN在其中一行中有 ,则新列的相应值应该是1

注意:列的数据类型可能是不同的对象,而不仅仅是整数/浮点数

X A   B
1 2   3    
4 NaN 1    
7 8   9    
3 2   NaN  
5 NaN 2   
Run Code Online (Sandbox Code Playgroud)

应该给

X A   B    C
1 2   3    0
4 NaN 1    1
7 8   9    0
3 2   NaN  1
5 NaN 2    1
Run Code Online (Sandbox Code Playgroud)

尝试过的代码(感谢一些在线帮助):

df['C'] = np.where(np.any(np.isnan(df[['A', 'B']])), 1, 0)
Run Code Online (Sandbox Code Playgroud)

但它会引发以下错误

TypeError: ufunc 'isnan' not supported for the input types, and the inputs could not be safely coerced to any …
Run Code Online (Sandbox Code Playgroud)

python numpy dataframe pandas

5
推荐指数
1
解决办法
4934
查看次数

标签 统计

dataframe ×1

numpy ×1

pandas ×1

python ×1