“Numpy”类型错误:无法理解数据类型“字符串”

Jun*_*Jun 3 python csv numpy

我是一个尝试使用 python 学习数据可视化的新手。实际上,我只是想按照食谱给出的示例进行操作,例如:

import numpy
import os
os.chdir("Home/Desktop/Temporal_folder")
data = numpy.loadtxt ('ch02-data.csv', dtype= 'string', delimiter=',')
print (data)
Run Code Online (Sandbox Code Playgroud)

但不知何故它没有解决:

Traceback (most recent call last):
  File "Home/PycharmProjects/Learning/Datavisuallization.py", line 5, in <module>
    data = numpy.loadtxt ('ch02-data.csv', dtype= 'string', delimiter=',')
  File "Home/anaconda/lib/python3.6/site-packages/numpy/lib/npyio.py", line 930, in loadtxt
    dtype = np.dtype(dtype)
TypeError: data type "string" not understood
Run Code Online (Sandbox Code Playgroud)

这是我使用的数据:“ch02-data.csv”

发布了一些类似的问题,但我不确定我是否理解答案试图解释的内容。另外,我检查了numpy.loadtext()手册,答案对我来说似乎仍然不明显......有什么建议吗? https://docs.scipy.org/doc/numpy/reference/generated/numpy.loadtxt.html

mcb*_*mcb 10

尝试 dtype='str' 而不是 dtype='string'。


McG*_*ady 6

其实它在Python2中运行良好,但在Python 3.x中不起作用,你可以试试 numpy.str

在 Python 2 中,没有问题:

>>> import numpy as np
>>> np.__version__
'1.12.0'
>>> np.dtype('string')
dtype('S')
>>> np.dtype('str')
dtype('S')
Run Code Online (Sandbox Code Playgroud)

在 Python 3 中,这会引发异常:

>>> import numpy as np
>>> np.__version__
'1.11.3'
>>> np.dtype('string')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: data type "string" not understood
>>> np.dtype('str')
dtype('<U')
Run Code Online (Sandbox Code Playgroud)

你可以从这个问题中看到更多细节。