numpy中np.dstack()、np.hstack()、np.vstack()用法
在写代码时,经常会遇到多个矩阵数组拼接的情况,numpy里dstack, hstack, vstack, 都有拼接的作用,那么这些函数是怎么执行的,他们的结果又如何呢?
np.dstack()
按深度顺序堆叠arrays。当数组为2维数组(M,N)或1维数组(N,)时,首先分别将其维度改变为(M,N,1)、(1,N,1),然后沿着第三根轴(r/g/b通道)进行拼接。
栗子:
# 一维 a = np.array([1, 2]) b = np.array([3, 4]) print(np.dstack((a,b))) # 二维 a = np.array([[1, 1], [2, 2], [3, 3]]) b = np.array([[4, 4], [5, 5], [6, 6]]) print(np.dstack((a,b))) # 运行结果 [[[1 3] [2 4]]] [[[1 4] [1 4]] [[2 5] [2 5]] [[3 6] [3 6]]]
np.hstack()
水平方向(列)顺序堆叠arrays。
栗子:
import numpy as np # 一维 a = np.array([1, 2]) b = np.array([3, 4]) print(np.hstack((a,b))) # 二维 a = np.array([[1, 1], [2, 2], [3, 3]]) b = np.array([[4, 4], [5, 5], [6, 6]]) print(np.hstack((a,b))) # 运行结果 [1 2 3 4] [[1 1 4 4] [2 2 5 5] [3 3 6 6]]
np.vstack()
垂直方向(行)顺序堆叠arrays。
栗子:
# 一维 a = np.array([1, 2]) b = np.array([3, 4]) print(np.vstack((a,b))) # 二维 a = np.array([[1, 1], [2, 2], [3, 3]]) b = np.array([[4, 4], [5, 5], [6, 6]]) print(np.vstack((a,b))) # 运行结果 [[1 2] [3 4]] [[1 1] [2 2] [3 3] [4 4] [5 5] [6 6]]
到此这篇关于numpy中np.dstack()、np.hstack()、np.vstack()用法的文章就介绍到这了,更多相关np.dstack()、np.hstack()、np.vstack()内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
基于Python实现批量读取大量nc格式文件并导出全部时间信息
这篇文章主要为大家详细介绍了如何基于Python语言,逐一读取大量.nc格式的多时相栅格文件并导出其中所具有的全部时间信息的方法,需要的可以参考下2024-01-01
Python os模块中的isfile()和isdir()函数均返回false问题解决方法
这篇文章主要介绍了Python os模块中的isfile()和isdir()函数均返回false问题解决方法,返回false的原因是路径使用了相对路径,使用绝对路径就可以解决这个问题,需要的朋友可以参考下2015-02-02


最新评论