numpy中数组扩展函数tile
tile函数
tile函数的定义如下:
def tile(A, reps)
该函数主要有两个参数,参数A指定重复的数组,参数reps之订重复的次数。
注意:如果reps的长度为d,则最后重复后的数组的维度为max(d, A.ndim),即取d与A的维度的最大值。如果A.ndim < d,则通过添加新轴使A变为d维。例如对于shape为(3,)通过2维重复shape变为(1,3),通过3维的重复shape变为(1,1,3)。
例子:
numpy中数组重复与扩展函数repeat
函数的定义如下:
repeat(a, repeats, axis=None):
repeat函数主要有3个参数,参数a指定需要重复的数组元素,参数repeats指定重复次数,参数axis指定沿着哪个轴进行重复。
axis=None,时候就会flatten当前矩阵,实际上就是变成了一个行向量
axis=0,沿着y轴复制,实际上增加了行数
axis=1,沿着x轴复制,实际上增加列数
>>> np.repeat(x, 3, axis=0)
array([[1, 2],
[1, 2],
[1, 2],
[3, 4],
[3, 4],
[3, 4]])
总结:
这两个函数的主要区别在于:tile函数是对数组进行重复操作,repeat函数是对数组中的每个元素进行重复操作。