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函數正常工作,但我需要定義這些字段。我究竟做錯了什麼?