使用genfromtxt导入带缺失值的csv数据到numpy
我有一个csv文件,内容大概是这样的(实际文件有更多的列和行):
1,2,3,4,5
6,7,8,9,10
11,12,13,14,15
16
假设这个文件的名字叫info.csv。如果我尝试用下面的方式导入这个文件:
data = numpy.genfromtxt('info.csv', delimiter = ',')
那么我就会遇到以下错误:
ValueError: Some errors were detected ! Line #4 (got 1 columns instead of 5)
如果我使用:
data = numpy.genfromtxt('info.csv', delimiter = ',', skip_footer = 1)
那么包含数据16
和数据11, 12, 13, 14, 15
的两行都会被跳过。我不明白为什么包含11, 12, 13, 14, 15
的那一行会被跳过。希望能得到一些帮助,告诉我如何正确使用genfromtxt
来导入上面文件的前三行。
谢谢
2 个回答
0
命令 filling_values
也对我有帮助。我把它设置为零。这样每个空值就变成了零。虽然这样做可能并不总是合适,但也许对你会有帮助。
9
如果你可以忽略文件末尾的16,可以试试使用
invalid_raise
(布尔值,可选)这个参数。如果设置为False,它会忽略所有不完整的行,而不会抛出异常。
具体可以查看这里(这是示例之前的最后一个参数): http://docs.scipy.org/doc/numpy/reference/generated/numpy.genfromtxt.html