Python Numpy load txt奇怪的行为

Python Numpy load txt奇怪的行为,python,csv,numpy,Python,Csv,Numpy,我有一个csv文件,用逗号分隔,我想导入一个numpy数组,每次只选择几个col。我的文件有44列。如果我尝试在16之前加载任何列,它的效果会非常好 data=np.loadtxt(open(file,"rU"),delimiter=",",usecols=(7,8,10,15)) 但是,如果尝试加载超过16的柱: data=np.loadtxt(open(file,"rb"),delimiter=",",usecols=(16,17)) 它返回: Traceback (most recen

我有一个csv文件,用逗号分隔,我想导入一个numpy数组,每次只选择几个col。我的文件有44列。如果我尝试在16之前加载任何列,它的效果会非常好

data=np.loadtxt(open(file,"rU"),delimiter=",",usecols=(7,8,10,15))
但是,如果尝试加载超过16的柱:

data=np.loadtxt(open(file,"rb"),delimiter=",",usecols=(16,17))
它返回:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/site-packages/numpy/lib/npyio.py", line 839, in loadtxt
vals = [vals[i] for i in usecols]
IndexError: list index out of range
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
loadtxt中的文件“/usr/local/lib/python2.7/site packages/numpy/lib/npyio.py”,第839行
VAL=[VAL[i]表示使用中的i]
索引器:列表索引超出范围
该文件看起来还可以,因为它是由编写csv的每一行的python脚本生成的


谢谢

您可以包含csv中的一些行吗?当您获取文件的一行并对其执行len(行)操作时会发生什么?您确定没有任何截断行吗?如果您使用csv.DictReader或csv.reader导入文件并检查列,会发生什么情况?您的第一个打开项为“rU”,而第二个打开项为“rb”,请在测试中检查它们是否相同。谢谢!它在另一台计算机上工作,所以我想我必须修改我的python安装和相关软件包。“rb”和“rU”之间的差异似乎不会影响输出,我尝试了两者以确保错误与文件访问无关。实际上,我可以使用csv阅读器恢复内容,所以我想问题可能出在numpy安装中。