Python 使用xlrd,如何替换丢失的/NaN单元格

Python 使用xlrd,如何替换丢失的/NaN单元格,python,excel,xlrd,Python,Excel,Xlrd,我正在使用python绘制excel文件中的数据。我的单元格有问题,这些单元格缺少数据并且填充了“NA”。 我已经解决了如何用0替换它们,但是我可以用空白单元格替换它们吗?(目前他们把我的图表弄得一团糟,到处都是0的数据) 这是我的剧本: import xlrd book= xlrd.open_workbook('CHATS_tracegases_allLevels.xls') level_1=book.sheet_by_index(0) # Level 1 variables time_1

我正在使用python绘制excel文件中的数据。我的单元格有问题,这些单元格缺少数据并且填充了“NA”。 我已经解决了如何用0替换它们,但是我可以用空白单元格替换它们吗?(目前他们把我的图表弄得一团糟,到处都是0的数据) 这是我的剧本:

import xlrd

book= xlrd.open_workbook('CHATS_tracegases_allLevels.xls')
level_1=book.sheet_by_index(0)

# Level 1 variables
time_1=level_1.col_values(0, start_rowx=10, end_rowx=None)
ozone_1=level_1.col_values(2, start_rowx=10, end_rowx=None)

ozone_1 = [float(i) if i != 'NA' else 0 for i in ozone_1]
plot(time_1, ozone_1)
show()
此外,如果我能就如何更好地编写脚本提出任何建议,我将不胜感激(我有6张纸,每张纸上有8个变量,我需要绘制。因此,如果我像上面的例子那样将其全部写出来,它会变得非常庞大,而且可能非常低效)


谢谢

ozone\u 1=[float(i)if i!='NA'或'NaN'for i in ozone\u 1]
我不熟悉xlrd,但如果i!='NA'else'不起作用?不,不幸的是,当你说空值时,我得到错误“ValueError:无法将字符串转换为浮点”,你不能在创建ozone_1时完全忽略它们吗?问题解决了
ozone_1=[float(i)if i!='NA'或'NaN'for i in ozone_1]
将其作为答案发布并接受,这样会更有帮助。