numpy中的tile函数

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_40244153/article/details/79713126

最近在机器学习实战中学习knn分类算法的过程中用到了tile函数,在此记录下来此函数的用法。

函数原型:numpy.tile(A,reps) #简单理解是此函数将A进行重复输出

其中A和reps都是array_like的参数,A可以是:array,list,tuple,dict,matrix以及基本数据类型int,string,float以及bool类型,reps的类型可以是tuple,list,dict,array,int,bool,但不可以是float,string,matrix类型。

 计较常用的形式有两种,是将A简单进行一维重复输出,和将A进行二维重复后输出。

A为一维数组

>>> import numpy
>>> numpy.tile([0,0],5)#在列方向上重复[0,0]5次,默认行1次    一维
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
>>> numpy.tile([0,0],(1,1))#在列方向上重复[0,0]1次,行1次    二维
array([[0, 0]])
>>> numpy.tile([0,0],(2,1))#在列方向上重复[0,0]1次,行2次    二维
array([[0, 0],
       [0, 0]])
>>> numpy.tile([0,0],(1,3))#在列方向上重复[0,0]3次,行1次    二维
array([[0, 0, 0, 0, 0, 0]])
>>> numpy.tile([0,0],(2,3))#在列方向上重复[0,0]3次,行2次    二维
array([[0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0]])
A为二维数组
>>> numpy.tile([[1,2,3],[4,5,5]],3)                      #一维
array([[1, 2, 3, 1, 2, 3, 1, 2, 3],
       [4, 5, 5, 4, 5, 5, 4, 5, 5]])
>>> numpy.tile([[1,2,3],[4,5,5]],[2,3])                  #二维
array([[1, 2, 3, 1, 2, 3, 1, 2, 3],
       [4, 5, 5, 4, 5, 5, 4, 5, 5],
       [1, 2, 3, 1, 2, 3, 1, 2, 3],
       [4, 5, 5, 4, 5, 5, 4, 5, 5]])
自己的理解:先进行列重复,再整体进行重复

猜你喜欢

转载自blog.csdn.net/weixin_40244153/article/details/79713126