ailitao

tile

  1. tile(数组,重复次数)
  2. tile(数组,(第1维重复次数,第2维重复次数,...,第n维重复次数))

例子

tile(数组,(沿着第1维的轴重复次数,沿着第2维的轴重复次数,…,沿着第n维的轴重复次数))

我看了下numpy中tile()函数的源码,它是这么做的。
(第1维重复次数,第2维重复次数,...,第n维重复次数)这是个元组,复制的顺序是从最后那个维度开始往前执行复制操作。
假如是tile(a,(2,4,3),它先将a复制3次将结果保存到a,然后复制4次然后增加一维再保存到a,然后再复制2次然后增加一维返回结果。
这个元组维度和目标数组维度一样,因为它是要沿着某个轴进行复制。看下面这个例子

a = np.array([0,1,2])
np.tile(a,(2,3))
"""
从后面往前面遍历元组(2,3)。先将a复制3次,然后将复制后的结果保存到a=[0, 1, 2, 0, 1, 2, 0, 1, 2]。
再复制2次。得到目标数组。
array([[0, 1, 2, 0, 1, 2, 0, 1, 2],
       [0, 1, 2, 0, 1, 2, 0, 1, 2]])
"""

np.tile(a,(3,1))
"""
从后面往前遍历元组(3,1),先将a复制1次,然后将复制的结果保存到a。再复制3次。
array([[0, 1, 2],
       [0, 1, 2],
       [0, 1, 2]])
"""

tile(数组,重复次数)=tile(数组,(重复次数,))

a = np.array([0,1,2])
np.tile(a,3)
"""
array([0, 1, 2, 0, 1, 2, 0, 1, 2])
"""

分类:

技术点:

相关文章:

  • 2021-10-15
  • 2021-10-05
  • 2021-08-31
  • 2021-07-27
  • 2022-12-23
  • 2021-08-05
  • 2021-09-20
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2020-06-01
  • 2021-11-04
  • 2021-05-27
  • 2022-12-23
相关资源
相似解决方案