重塑numpy的阵列
问题描述:
我想重塑以下numpy的阵列中的IPython:重塑numpy的阵列
array([[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12]]) # Array A
到:
array([[1, 5, 9],[2, 6, 10],[3, 7, 11],[4, 8, 12]]) # Array B
的主要任务是,以计算阵列A的第一元件的平均(意思是1,5,9的平均值),然后是第二个元素等。
我认为最简单的方法是重塑数组,然后计算它的平均值。
有没有办法做到这一点,而不通过for
循环循环数组?
答
使用上mean
的axis
关键词;无需reshape
:
>>> A = np.array([[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12]])
>>> A.mean(axis=0)
array([ 5., 6., 7., 8.])
如果你想在阵列B
出来,那么你需要转阵,不重塑它:
>>> A.T
array([[ 1, 5, 9],
[ 2, 6, 10],
[ 3, 7, 11],
[ 4, 8, 12]])
但随后你需要给axis=1
到mean
。
+0
非常感谢您的回答!适合我的问题! –
这些NumPy数组? –
是的,这些都是numpy数组 –