Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如果两个不同列中的两个值均为NaN,则为0,否则为1_Python_Pandas - Fatal编程技术网

Python 如果两个不同列中的两个值均为NaN,则为0,否则为1

Python 如果两个不同列中的两个值均为NaN,则为0,否则为1,python,pandas,Python,Pandas,我的数据框架如下所示: 自报价格自报价格 0200-05-0311:59:48.627436南0.08331 1 2020-05-03 11:59:36.286763 0.08367 0.08331 2020-05-03 11:59:24.279036 0.08367南 3 2020-05-03 11:59:12.298755楠楠楠 我试图实现的是,如果两列都是NaN,那么在第三列中,该行的值为0,否则为1 因此,输出应如下所示: ts self_top_ask_price self_

我的数据框架如下所示:

自报价格自报价格 0200-05-0311:59:48.627436南0.08331 1 2020-05-03 11:59:36.286763 0.08367 0.08331 2020-05-03 11:59:24.279036 0.08367南 3 2020-05-03 11:59:12.298755楠楠楠

我试图实现的是,如果两列都是NaN,那么在第三列中,该行的值为0,否则为1

因此,输出应如下所示:

ts  self_top_ask_price  self_top_bid_price both
0   2020-05-03 11:59:48.627436  NaN 0.08331  1
1   2020-05-03 11:59:36.286763  0.08367 0.08331 1
2   2020-05-03 11:59:24.279036  0.08367 NaN 1
3   2020-05-03 11:59:12.298755  NaN NaN 0
我尝试了以下方法,但没有效果。你知道吗

metrics[['self_top_ask_price', 'self_top_bid_price']] = metrics['both'].applymap(lambda x: 0 if pd.isnull(x) else 1)

谢谢

检查两列,如果没有缺少值,则使用以下方法将其转换为数字
0,1
映射布尔值:

或通过:


metrics['both'] = (metrics[['self_top_ask_price', 'self_top_bid_price']].notna()
                                                          .any(axis=1)
                                                          .astype(int))
metrics['both'] = (metrics[['self_top_ask_price', 'self_top_bid_price']].notna()
                                                          .any(axis=1)
                                                          .view('i1'))
print (metrics)
                           ts  self_top_ask_price  self_top_bid_price  both
0  2020-05-03 11:59:48.627436                 NaN             0.08331     1
1  2020-05-03 11:59:36.286763             0.08367             0.08331     1
2  2020-05-03 11:59:24.279036             0.08367                 NaN     1
3  2020-05-03 11:59:12.298755                 NaN                 NaN     0