如是我闻: np.tile
是 NumPy 库中的一个函数,用于沿指定轴重复数组。该函数可以将一个数组作为输入,并将其沿一个或多个轴复制扩展成新的数组。np.tile
的基本用法是将数组重复某个次数,从而创建一个更大的数组。
函数原型
numpy.tile(A, reps)
A
:是输入的数组。reps
:指定了A沿各个轴重复的次数。如果reps
是一个整数,A
将在所有轴上重复这么多次。如果reps
是一个数组,则它指定了每个轴的重复次数,数组的长度决定了重复操作的轴数。
示例
假设我们有一个数组[1, 2]
,我们想要沿着某个轴重复这个数组来创建一个更大的数组。
重复一个数组
import numpy as np
# 定义一个数组
a = np.array([1, 2])
# 沿着第一个轴重复2次,第二个轴重复3次
b = np.tile(a, (2, 3))
print(b)
输出结果为
[[1 2 1 2 1 2]
[1 2 1 2 1 2]]
在这个例子中,数组a
首先沿着列方向(第二个轴)被重复了3次,然后结果沿着行方向(第一个轴)被重复了2次。
重复多维数组
对于多维数组,np.tile
也能按照给定的reps
值进行相应的重复。
# 定义一个二维数组
a = np.array([[1, 2], [3, 4]])
# 沿着行方向重复2次,列方向重复3次
b = np.tile(a, (2, 3))
print(b)
输出的结果为
[[1 2 1 2 1 2]
[3 4 3 4 3 4]
[1 2 1 2 1 2]
[3 4 3 4 3 4]]
在这个例子中,原始的二维数组a
先在列方向(沿着内部数组)重复了3次,然后这个结果在行方向(沿着数组的列表)重复了2次,从而生成了一个更大的二维数组。np.tile
是处理数组复制扩展的非常有用的工具,非常的OK
以上