Python 没有读入正确的列数

Python doesn't read in the correct number of columns

我正在尝试读取一个包含 2 列的 txt 文件(第一列是字符串,第二列是双列,制表符分隔)。

这是我的数据文件:

C#  6.78
D   5.32
W   5.32
-> data.txt

这是我简化的代码:

import numpy as np

data = np.loadtxt('data.txt',delimiter='\t', dtype=str)

print data

它给我以下错误:

 File "loader.py", line 6, in <module>
    data = np.loadtxt('data.txt',delimiter='\t', dtype=str)
  File "/usr/lib64/python2.7/site-packages/numpy/lib/npyio.py", line 853, in loadtxt
    % line_num)
ValueError: Wrong number of columns at line 2

我不明白这个,因为列的数量是相等的。

问题可能是由于您文件中的 #,它被解释为评论(请参阅 the documentation)。尝试将 comments=None 传递给 loadtxt.

我认为你的问题是第一行的 #。它被解释为注释字符。因此第一行有 1 个字段,所以它期望第二行是相同的。要么删除字符,要么将 loadtxt 的 'comment' 参数更改为其他内容。