numPy在从文件读取负数时给出nan

时间:2018-09-09 06:13:06

标签: python numpy genfromtxt

我试图读取存储在具有以下值的文本文件中的3x3矩阵的内容。

−30  10  20  
 10  40 −50  
 20 −50 −10

我按如下方式使用numpy.genfromtxt,但是当它给出nan代替负数据值时。

data = np.genfromtxt('file.txt',delimiter=' ')
print(data)
print(type(data[0][0]))

但是负值的数据类型仍然显示float64

The screenshot of code and output.

我还尝试将这些值作为列表读取,然后转换为numpy数组,但这也不起作用。

还有其他方法可以从文件输入中读取负值作为numpy数组吗?

2 个答案:

答案 0 :(得分:4)

您的文件中包含U + 2212减号字符,而不是通常认为U + 002D减号-减号字符的人。 genfromtxt不处理该字符。在尝试解析数据之前,请用连字符-减号替换减号字符。

答案 1 :(得分:0)

请尝试以下代码:

data=pd.read_csv("data.txt",delimiter=",")
data = DataFrame(data)