說我做一個古靈精怪的小數組:數組numpy的陣列調整
>>> a = np.array([[[1,2,3],4],[[4,5,6],5]])
>>> a
array([[[1, 2, 3], 4],
[[4, 5, 6], 5]], dtype=object)
再取一的第一列作爲一個切片:
>>> b = a[:,0]
>>> b
array([[1, 2, 3], [4, 5, 6]], dtype=object)
>>> b.shape
(2,)
說我現在要重塑B,使用它的形狀是(2,3):
>>> b.reshape((-1,3))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: total size of new array must be unchanged
我假定numpy的被處理b中每個陣列作爲一個對象,而不是在其本身的陣列。問題是,是否有一個很好的方法來進行所需的調整大小?
說得沒錯。但是,將數組放在[0,0]中並沒有什麼區別。 a [:,0]切片的結果仍返回一個對象數組。使用vstack確實可以做到這一點。 Upvote for you並接受georgesl立即指出vstack之後所需的結果形狀(這正是我所尋找的)。 –