Python-如果单元格为空,则打印错误消息
我必须从Excel调用python脚本,我需要检查数据是否干净 我将从excel文件中获取数据帧。一种不可接受的情况是在df中的一个特定列中有一个空值 我想打印一条错误消息,并在该列中的值为空时退出脚本 比如:Python-如果单元格为空,则打印错误消息,python,pandas,Python,Pandas,我必须从Excel调用python脚本,我需要检查数据是否干净 我将从excel文件中获取数据帧。一种不可接受的情况是在df中的一个特定列中有一个空值 我想打印一条错误消息,并在该列中的值为空时退出脚本 比如: if df['columnX'] is empty print "error message" sys.exit() 不确定什么是有效的处理方法您可以使用它来检查是否所有值都是NaN-输出是布尔掩码-True和False值 然后,如果需要,则需要检查是否所有值均为Tru
if df['columnX'] is empty
print "error message"
sys.exit()
不确定什么是有效的处理方法您可以使用它来检查是否所有值都是NaN
-输出是布尔掩码-True
和False
值
然后,如果需要,则需要检查是否所有值均为True
,或者如果需要,则检查是否至少有一个值为True
输出为标量True
或False
:
if df['columnX'].isnull().all():
print "error message"
sys.exit()
样本:
df = pd.DataFrame({'columnX':[np.nan] * 3})
print (df)
columnX
0 NaN
1 NaN
2 NaN
print (df['columnX'].isnull())
0 True
1 True
2 True
Name: columnX, dtype: bool
print (df['columnX'].isnull().all())
True
print (df['columnX'].isnull().any())
True
if df['columnX'].isnull().all():
print "error message"
sys.exit()
在这种情况下,不是isnull().any()吗?@A-Za-z-谢谢你的评论,我在解决方案中增加了
all
和any
df = pd.DataFrame({'columnX':[np.nan] * 3 + [5.6]})
print (df)
columnX
0 NaN
1 NaN
2 NaN
3 5.6
print (df['columnX'].isnull())
0 True
1 True
2 True
3 False
Name: columnX, dtype: bool
print (df['columnX'].isnull().all())
False
print (df['columnX'].isnull().any())
True