Pandas 找出数据帧中两列之间的空值

Pandas 找出数据帧中两列之间的空值,pandas,Pandas,我必须检查Dataframe中的两列之间是否有空值。我使用以下方法获取了数据帧中第一个非空值和最后一个非空值的位置: x.first_valid_index() x.last_valid_index() 现在我需要找出这两个位置之间是否有任何空值我认为这与检查所有NaN值到布尔掩码和总和真值值是一样的: x = pd.DataFrame({'a':[1,2,np.nan, np.nan], 'b':[np.nan, 7,np.nan,np.nan],

我必须检查Dataframe中的两列之间是否有空值。我使用以下方法获取了数据帧中第一个非空值和最后一个非空值的位置:

 x.first_valid_index()
 x.last_valid_index()

现在我需要找出这两个位置之间是否有任何空值

我认为这与检查所有
NaN
值到
布尔掩码
和总和
真值
值是一样的:

x = pd.DataFrame({'a':[1,2,np.nan, np.nan],
                  'b':[np.nan, 7,np.nan,np.nan],
                  'c':[4,5,6,np.nan]})
print (x)
     a    b    c
0  1.0  NaN  4.0
1  2.0  7.0  5.0
2  NaN  NaN  6.0
3  NaN  NaN  NaN


cols = ['a','b']
f = x[cols].first_valid_index()
l = x[cols].last_valid_index()
print (f)
0
print (l)
1

print (x.loc[f:l, cols].isnull().sum().sum())
1

我认为这与将所有
NaN
值检查为
boolean mask
和sum
True
值相同:

x = pd.DataFrame({'a':[1,2,np.nan, np.nan],
                  'b':[np.nan, 7,np.nan,np.nan],
                  'c':[4,5,6,np.nan]})
print (x)
     a    b    c
0  1.0  NaN  4.0
1  2.0  7.0  5.0
2  NaN  NaN  6.0
3  NaN  NaN  NaN


cols = ['a','b']
f = x[cols].first_valid_index()
l = x[cols].last_valid_index()
print (f)
0
print (l)
1

print (x.loc[f:l, cols].isnull().sum().sum())
1

我需要检查我拥有的列之间是否有任何空值。怎么做?你能加样品吗?你认为只在2列中检查NaN还是有多列?在这种情况下,A、B、C列有数值,但在我的情况下,我有要添加的列名,或者执行任何类型的操作,可以告诉我这些列之间是否有空值。嗯,您能否根据需要修改我的数据框,并将其添加到具有所需输出的问题中?谢谢。我需要检查我的列之间是否有空值。怎么做?你能加样品吗?你认为只在2列中检查NaN还是有多列?在这种情况下,A、B、C列有数值,但在我的情况下,我有要添加的列名,或者执行任何类型的操作,可以告诉我这些列之间是否有空值。嗯,您能否根据需要修改我的数据框,并将其添加到具有所需输出的问题中?谢谢。你能添加一些示例数据吗?你能添加一些示例数据吗?