numpy中np.dstack()、np.hstack()、np.vstack()用法

  • Post category:Python

以下是关于numpy中np.dstack()、np.hstack()、np.vstack()用法的攻略:

numpy中np.dstack()、np.hstack()、np.vstack()用法

在NumPy中,可以使用np.dstack()、np.hstack()、np.vstack()方法将多个数组沿不同的轴组合成一个新的数组。以下是一些常用的方法:

np.dstack()方法

np.dstack()方法可以将多个数组沿第三个维度(深度)组合成一个新的数组。以下是一个示例:

import numpy as np

# 生成三个数组
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])
c = np.array([[9, 10], [11, 12]])

# 使用np.dstack()方法组合数组
d = np.dstack((a, b, c))

# 输出结果
print(d)

输出:

[[[ 1  5  9]
  [ 2  6 10]]

 [[ 3  7 11]
  [ 4  8 12]]]

在这个示例中,我们使用numpy.array()方法生成了三个数组a、b、c。然后,我们使用np.dstack()方法将这三数组沿第三个维度(深度)组合成一个新的d。最后,我们输出了d的结果,可以看到d是一个3数组,其中第三个维度(深度)包含了a、b、c三个数组。

np.hstack()方法

np.hstack()方法可以将多个数组沿第二个维度(列)组合成一个新的数组。以下是一个示例:

import numpy as np

# 生成两个数组
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])

# 使用np.hstack()方法组合数组
c = np.hstack((a, b))

# 输出结果
print(c)

输出:

[[1 2 5 6]
 [3 4 7 8]]

在这个示例中,我们使用numpy.array()方法生成了两个数组a、b。然后,我们使用np.hstack()方法将这两个数组沿第二个维度(列)组合成一个新的数组c。最后,我们输出了c的结果,可以看到c是一个2维数组,其中第二个维度(列)包含了a、b两个数组。

np.vstack()方法

np.vstack()方法可以将多个数组沿第一个维度(行)组合成一个新的数组。以下是一个示例:

import numpy as np

# 生成两个数组
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])

# 使用np.vstack()方法组合数组
c = np.vstack((a, b))

# 输出结果
print(c)

输出:

[[1 2]
 [3 4]
 [5 6]
 [7 8]]

在这个示例中,我们使用numpy.array()方法生成了两个数组a、b。然后,我们使用np.vstack()方法将这两个数组沿第一个维度(行)组合成一个新的数组c。最后,我们输出了c的结果,可以看到c是一个2维数组,其中第一个维度(行)包含了a、b两个数组。

结束

这就是关于numpy中np.dstack()、np.hstack()、np.vstack()用法的攻略。可以使用np.dstack()、np.hstack()、np.vstack()方法来将多个数组沿不同的轴组合成一个新的数组。希望这篇文章能够帮助您更好地理解如何在NumPy中组合多个数组。