0
我有一个列表,这基本上是这样的:使用asarray返回类型错误:读取缓冲区对象错误
toLocArray
>>[['Location 1', 'RAILS', 0.10520972, 20000],
['Location 2', 'ROADS', 0.377652629, 20000],
['Location 3', 'RAILS', 0.12588421, 20000],
['Location 4', 'ROADS', 0.377652629, 20000]]
我要投它作为一个ndarray,与指定的D型:
dtype = [('toLoc', 'a50'),('Network', 'a10'), ('timeCost', 'f8'), ('toLocCapacity', 'i4')]
toLocArray = np.asarray(toLocArray, dtype=dtype)
然而,我得到以下错误:
89 dtype = [('toLoc', 'a50'),('Network', 'a10'), ('timeCost', 'f8'), ('toLocCapacity', 'i4')]
---> 90 toLocArray = np.asarray(toLocArray,dtype=dtype)
91
92
C:[path]\site-packages\numpy\core\numeric.pyc in asarray(a, dtype, order)
460
461 """
--> 462 return array(a, dtype, copy=False, order=order)
463
464 def asanyarray(a, dtype=None, order=None):
TypeError: expected a readable buffer object
从我读过这种错误发生时试图设置一个值wi这是错误的类型,但我不明白我在这里如何做到这一点。如果我不使用“dtype =”子句,我可以使asarray函数正常工作,但我需要定义这些字段。我究竟做错了什么?