2017-07-05 38 views
0

好吧,我有一個數組,有5行和一列。我有另外一個有5列和1行的數組。有沒有辦法讓我可以更簡單的方式將數組的值更改爲列。我知道我可以這樣做:是否有一個簡單的函數將數組的值更改爲另一個數組中的列?

import numpy as np 
x = np.ones(5) 
y = np.zeros([5,1]) 
y[:,0] = x 

有沒有更簡單的方法來做到這一點。我將在列中翻轉許多值,這可能會在我的實際代碼中變得混亂。

+1

你可以轉置嗎? 'y = x.T'(如果x的形狀是(1,5)) –

+1

「我有另一個包含5列和1行的數組」 - 在您的發佈代碼中,您沒有。你有一個有5個元素的1維數組,沒有行或列的概念。這個區別很重要。 – user2357112

+0

因爲'x'是1d,所以shape(5,),'x [:,None]'是給它一個(5,1)形狀的好方法。 – hpaulj

回答

3

您正在尋找reshape

y = x.reshape((5,1)) 
+0

清潔:'x.reshape(y.shape)' –

+0

我認爲'y'可能尚未定義。 –

+0

好的,有道理 –

相關問題