如果我根据用户参数创建新的数据框,请说PlaySoundA(("Data\\sounds\Persos\\ATK\\" + NameOP + ".wav").c_str(), NULL, SND_FILENAME)
。因此,我的数据帧a = 2
缩小到df
的4(ax2)列。例如:
df_new
为了在df_new = pd.DataFrame(data = {'col_01_01': [float('nan'),float('nan'),1,2,float('nan')], 'col_02_01': [float('nan'),float('nan'),1,2,float('nan')],'col_01_02': [0,0,0,0,1],'col_02_02': [1,0,0,1,1],'output':[1,0,1,1,1]})
列上更精确,让我们看第一行。 output
->将notna()函数应用于前两个条目,并将比较“ == 1”应用于第三和第四行。 ->这将使[(nan,nan,0,1)]
->将其与OR表达式进行比较,并获得所需的结果True-> 1
在第二行中,我们发现[(false, false, false, true)]
,因此我们发现输出为0,因为前两个列没有有效值,后两个列没有0。
对于参数[(nan,nan,0,0)]
,我们发现6列。
结果如下所示:
a=3
答案 0 :(得分:0)
null_cols = ['col_01_01', 'col_02_01']
int_cols = ['col_01_02', 'col_02_02']
df['output'] = (df[null_cols].notnull().any(1) | df[int_cols].eq(1).any(1)).astype(int)
print(df)
col_01_01 col_02_01 col_01_02 col_02_02 output
0 NaN NaN 0 1 1
1 NaN NaN 0 0 0
2 1.0 1.0 0 0 1
3 2.0 2.0 0 1 1
4 NaN NaN 1 1 1