Numpy瓷砖文档
谁能解释一下这个numpy代码:Numpy瓷砖文档,numpy,Numpy,谁能解释一下这个numpy代码: import numpy as np a = np.array([0, 1, 2]) np.tile(a, (2,1,2)) 其输出为: 数组([[0,1,2,0,1,2]], [[0, 1, 2, 0, 1, 2]]]) 这是我复制代码的地方。欢迎使用堆栈溢出 numpy的函数平铺将沿着指定的维度(第二个参数)平铺(或复制多次,如果愿意) 让我添加一些评论来说明文档中正在发生的事情 将numpy导入为np 数组([0,1,2])#数组a有形状(3,) #下
import numpy as np
a = np.array([0, 1, 2])
np.tile(a, (2,1,2))
其输出为:
数组([[0,1,2,0,1,2]],
[[0, 1, 2, 0, 1, 2]]])
这是我复制代码的地方。欢迎使用堆栈溢出 numpy的函数
平铺
将沿着指定的维度(第二个参数)平铺(或复制多次,如果愿意)
让我添加一些评论来说明文档中正在发生的事情
将numpy导入为np
数组([0,1,2])#数组a有形状(3,)
#下一行沿维度0将数组a平铺两倍,输出形状(6,)
np.tile(a,(2))#输出[0,1,2,0,1,2]
文件指出:
如果A.ndimnp.tile(a,(2,2))
,该函数将(1)将大小为1的轴前置到a
(因为a.ndim=1
和d=len((2,2))=2
)和(2)沿轴0和1平铺该数组两次,从而输出形状为(2*1,2*3)=(2,6)
回到您的问题,当调用np.tile(a,(2,1,2))
时,发生的情况是函数将轴前置到a
以给出形状(1,1,3)
,然后将此增强数组平铺为(2*1,1,2*3)=(2,1,6)
,如果确实这样平铺数组[0,1,2]
,最后的结果是数组[[0,1,2,0,1,2][[0,1,2,0,1,2]]]
我希望有帮助?输出的
形状是什么?在我看来,它是一个(2,1,6)<代码>a
为(3,)。如文档中所述,将其重塑为(1,1,3)。乘以(2,1,2)。