2
我有一個3x3 numpy數組,我想用向量3x1分隔這個列。我知道如何通過向量的元素劃分每一行,但無法找到劃分每列的解決方案。numpy數組除以列向量
我有一個3x3 numpy數組,我想用向量3x1分隔這個列。我知道如何通過向量的元素劃分每一行,但無法找到劃分每列的解決方案。numpy數組除以列向量
可以移調你的陣列,在每個柱劃分
(arr_3x3.T/arr_3x1).T
讓我們嘗試幾件事情:
In [347]: A=np.arange(9.).reshape(3,3)
In [348]: A
Out[348]:
array([[ 0., 1., 2.],
[ 3., 4., 5.],
[ 6., 7., 8.]])
In [349]: x=10**np.arange(3).reshape(3,1)
In [350]: A/x
Out[350]:
array([[ 0. , 1. , 2. ],
[ 0.3 , 0.4 , 0.5 ],
[ 0.06, 0.07, 0.08]])
因此這也被不同的值
In [351]: A/x.T
Out[351]:
array([[ 0. , 0.1 , 0.02],
[ 3. , 0.4 , 0.05],
[ 6. , 0.7 , 0.08]])
分每一行並且這已經將每列除以不同的值
(3,3)
除以(3,1)
=>在列上覆制x
。使用轉置(1,3)
數組跨行復制。
當使用.T
(轉置)時,x
爲2d很重要。 A (3,)
數組轉換爲(3,)
數組 - 即沒有變化。