Python can';t将空单元格从csv导入转换为浮点

Python can';t将空单元格从csv导入转换为浮点,python,Python,我正在导入测试数据,并一直遇到一个问题“ValueError:无法将字符串转换为浮点:” 编辑:空白单元格总是在列表的末尾,所有的列表长度都不一样。 我想这是因为我在一些列表中导入了空白单元格。有人能帮我把它们除掉或者把它们归零吗? 我只是试图绘制数据,但我似乎无法解决这个错误 这是我的密码: import csv import numpy as np from itertools import islice with open('TestFile.csv') as csvfile: r

我正在导入测试数据,并一直遇到一个问题“ValueError:无法将字符串转换为浮点:” 编辑:空白单元格总是在列表的末尾,所有的列表长度都不一样。 我想这是因为我在一些列表中导入了空白单元格。有人能帮我把它们除掉或者把它们归零吗? 我只是试图绘制数据,但我似乎无法解决这个错误

这是我的密码:

import csv
import numpy as np
from itertools import islice
with open('TestFile.csv') as csvfile:
    readCSV = csv.reader(csvfile, delimiter=',')
    Cs = []
    Rs = []
    Qs = []
    for row in islice(readCSV,3,None):
        R = row[0]
        C = row[1]
        q = row[2]
        Qs.append(q)
        Cs.append(C)
        Rs.append(R)
plot(Qs)
下面是一些示例数据,另存为.csv:

Sample 1        Sample 2        Sample 3        Sample 4        Sample 5    
Load    Time    Load    Time    Load    Time    Load    Time    Load    Time
N   sec N   sec N   sec N   sec N   sec
0.007   2.3 0.524   2.3 0.344   2.3 0.914   2.3 1.086   2.3
0.052   2.32    0.577   2.32    0.397   2.32    0.973   2.32    1.161   2.32
0.112   2.34    0.637   2.34    0.457   2.34    1.041   2.34    1.235   2.34
0.172   2.36    0.689   2.36    0.517   2.36    1.101   2.36    1.31    2.36
0.232   2.38    0.749   2.38    0.577   2.38    1.168   2.38    1.385   2.38
0.292   2.4 0.816   2.4 0.637   2.4 1.235   2.4 1.46    2.4
0.352   2.42    0.884   2.42    0.704   2.42    1.303   2.42    1.535   2.42
2.44    0.959   2.44    0.779   2.44    1.37    2.44    1.61    2.44
2.46    1.033   2.46    0.854   2.46    1.445   2.46    1.685   2.46
2.48        2.48    0.929   2.48    1.52    2.48    1.752   2.48
        2.5 1.003   2.5 1.595   2.5 1.834   2.5
任何建议都将不胜感激


谢谢。

您可以在赋值之前测试单元格中的值,如果需要,可以将其替换为零:

R = row[0] if row[0] != '' else 0.0  # choose a test adapted to your values
C = row[1] if row[1] != '' else 0.0
q = row[2] if row[2] != '' else 0.0

您执行的测试必须适合您在文件中遇到的值的类型。

谢谢!我刚刚尝试添加了您建议的代码,第一次它就运行得很好。我会在9分钟内接受答案(不会让我提前这么做!)非常感谢,非常感谢你的帮助。很高兴我能帮忙,干杯。[我提出的代码中有一个输入错误;比较中使用的索引都是零-我现在就修复了它]