我想連接4個數組,形狀(78427,)的一個1D數組和形狀(78427,375/81/103)的三維數組。基本上這是4個具有78427圖像特徵的陣列,其中1D陣列對每個圖像只有1個值。Numpy連接二維數組與一維數組
我試圖串聯陣列如下:
>>> print X_Cscores.shape
(78427, 375)
>>> print X_Mscores.shape
(78427, 81)
>>> print X_Tscores.shape
(78427, 103)
>>> print X_Yscores.shape
(78427,)
>>> np.concatenate((X_Cscores, X_Mscores, X_Tscores, X_Yscores), axis=1)
這將導致以下錯誤:
Traceback (most recent call last): File "", line 1, in ValueError: all the input arrays must have same number of dimensions
這個問題似乎是一維數組,但我真的不能明白爲什麼(它也有78427個值)。我試圖在連接它之前對1D數組進行轉置,但那也不起作用。
任何幫助什麼是正確的方法來連接這些數組將不勝感激!
只需指出'A [:,np.newaxis]'具有與'A [:,無]'相同的行爲,有時可以更直觀(實際上'np.newaxis == None')。 –
但是,只有兩者具有相同的尺寸時纔是如此。在大多數情況下,我最終得到具有形狀(8400,)的陣列A和具有形狀(8399,21)的陣列B. 如何截斷/刪除A的最後幾行,使A和B具有相同的形狀,如(8399,)和(8399,21)。請指教。 –