📜  沿新轴重复数组 - Python (1)

📅  最后修改于: 2023-12-03 14:56:03.198000             🧑  作者: Mango

以 '沿新轴重复数组 - Python' 为主题的介绍

什么是沿新轴重复数组

在 NumPy 中,我们可以使用repeat方法来沿新轴重复数组。这个方法可以将一个一维数组按照特定的方式重复生成一个新的多维数组。

实现方法
numpy.repeat(arr, repeats, axis=None)
  • arr:要重复的输入数组。
  • repeats:每个元素重复的次数。
  • axis:沿着它重复的轴,默认为 None。如果提供了轴,则输入数组会先被展开,然后沿着该轴重复。其它的轴将保持原样。
使用实例
import numpy as np

# 生成一维数组
x = np.array([1, 2, 3])

# 沿新轴重复
y = np.repeat(x, 3)

print(y)  # [1 1 1 2 2 2 3 3 3]

在本例中,我们首先生成了一个一维数组 x,并使用 repeat 方法将其沿新轴重复了 3 次。输出的结果为 [1 1 1 2 2 2 3 3 3]

我们也可以指定 axis 参数进行沿轴方向的重复。

# 生成二维数组
a = np.array([[1, 2], [3, 4]])

# 沿着轴 0 重复一次
b = np.repeat(a, 2, axis=0)

# 沿着轴 1 重复两次
c = np.repeat(a, 2, axis=1)

print(b)  # [[1 2]
          #  [1 2]
          #  [3 4]
          #  [3 4]]
print(c)  # [[1 1 2 2]
          #  [3 3 4 4]]

在本例中,我们首先生成了一个二维数组 a,并用 repeat 方法进行沿轴方向的重复,即在轴 0 上重复一次,轴 1 上重复两次。输出的结果为:

  • b:[[1 2] [1 2] [3 4] [3 4]]
  • c:[[1 1 2 2] [3 3 4 4]]

这就是沿新轴重复数组的基本用法,可以根据具体的需求进行使用。