我想复制一个numpy数组维度,但是在某种程度上原始维度数组和复制维度数组的和仍然相同。例如,考虑一个n x m
形状数组(a
),我想把它转换成n x n x m
(b
)数组,这样a[i,j] == b[i,i,j]
。不幸的是,np.repeat
和{
>>> import numpy as np
>>> a = np.asarray([1, 2, 3])
>>> a
array([1, 2, 3])
>>> a.shape
(3,)
# This is not what I want...
>>> np.resize(a, (3, 3))
array([[1, 2, 3],
[1, 2, 3],
[1, 2, 3]])
在上面的例子中,我想得到这个结果:
^{pr2}$
从1d到2d数组,可以使用
np.diagflat
方法,该方法可以创建一个二维数组,其中平坦的输入作为对角线的:更一般地说,您可以创建一个零数组,并使用高级索引指定值:
^{pr2}$相关问题 更多 >
编程相关推荐