numpy.tile()是个什么函数呢,说白了,就是把数组沿各个方向复制

比如 a = np.array([0,1,2]),    np.tile(a,(2,1))就是把a先沿x轴(就这样称呼吧)复制1倍,即没有复制,仍然是 [0,1,2]。 再把结果沿y方向复制2倍,即最终得到

 array([[0,1,2],

             [0,1,2]])
 

同理:


>>> b = np.array([[1, 2], [3, 4]])
>>> np.tile(b, 2) #沿X轴复制2倍
array([[1, 2, 1, 2],
       [3, 4, 3, 4]])
>>> np.tile(b, (2, 1))#沿X轴复制1倍(相当于没有复制),再沿Y轴复制2倍
array([[1, 2],
       [3, 4],
       [1, 2],
       [3, 4]])
 

例如:如下的例子

a = array([0, 1, 2])

①tile(a, (2, 2)),(2,2)分别表示纵轴重复2个,横轴重复2次

numpy.tile()

②tile(a, (2, 1, 1)),(2,1,1)形状是(2,1),其中数组不复制

numpy.tile()

③tile(a, (2, 2, 1)),(2,2,1)形状是(2,2),最右边的1,代表不复制数组

numpy.tile()

 

相关文章: