这三个函数的功能都是堆叠数组。一下看三者的详细用法和区别之处。

1,stack()函数:

函数原型为:stack(arrays, axis=0)

arrays可以传数组和列表,arrays里面的每个元素必须形状是一样的,否则程序了会报错。

axis默认值为0,0是按行堆叠,1是按列堆叠(有矩阵转置的效果)。

可结合以下代码理解:

import numpy as np
a=[1,2,3]
b=[4,5,6]
c=[[1,2,3],[4,5,6]]
print("List a:\n",a)
print("List b:\n",b)
print("List c:\n",c)re=np.stack(c,axis=0)
print("c stack in rows:\n",re)
re=np.stack(c,axis=1)
print("c stack in columns:\n",re)
re=np.stack((a,b))
print("a and b are stack in rows:\n",re)
re=np.stack((a,b),axis=1)
print("a and b are stack in columns:\n",re)输出结果:
List a:[1, 2, 3]
List b:[4, 5, 6]
List c:[[1, 2, 3], [4, 5, 6]]
c stack in rows:[[1 2 3][4 5 6]]
c stack in columns:[[1 4][2 5][3 6]]
a and b are stack in rows:[[1 2 3][4 5 6]]
a and b are stack in columns:[[1 4][2 5][3 6]]

2,hstack函数()

函数原型hstack(tup)

tup可以是元组,列表,或者numpy数组,返回结果为numpy的数组。

hstack是把tup数组内最低维度的相同位置的元素按行顺序排列堆叠起来(同维度位置的为一行),返回的数组降了一个维度

可结合以下代码理解:

import numpy as np
a=[[1,2,3,4],[1,2,3,4],[1,2,3,4],[1,2,3,4]]
re=np.hstack(a)
print(re)结果:
[1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4]

[1,2,3,4],[1,2,3,4].......最低维度的相同位置的元素

import numpy as np
a=[[[1],[2],[3],[4]],[[1],[2],[3],[4]],[[1],[2],[3],[4]],[[1],[2],[3],[4]]]
re=np.hstack(a)
print(re)结果:
[[1 1 1 1][2 2 2 2][3 3 3 3][4 4 4 4]]

[1],[1],[1],[1]为相同维度相同位置的元素.(原数组大于三维时,具有降维转置的效果)

3,vstack()函数

函数原型vstack(tup)。

参数tup可以是元组,列表,或者numpy数组,返回结果为numpy的数组。

vstack是把tup数组内每个元素按列顺序排列堆叠起来.

import numpy as np
a=[[1],[2],[3]]
b=[[1],[2],[3]]
c=[[1],[2],[3]]
d=[[1],[2],[3]]
print(np.vstack((a,b,c,d)))输出:
[[1][2][3][1][2][3][1][2][3][1][2][3]]
import numpy as np
a=[[[[1,2],[2,2],[3,2],[1,4]],[[1,2],[2,2],[3,2],[1,4]],[[1,2],[2,2],[3,2],[1,4]],[[1,2],[2,2],[3,2],[1,4]]]]
re=np.vstack(a)
print(re)结果:
[[[1 2][2 2][3 2][1 4]][[1 2][2 2][3 2][1 4]][[1 2][2 2][3 2][1 4]][[1 2][2 2][3 2][1 4]]]

4,dstack

函数原型:dstack(tup)

dstack 表示将数组可在第三维进行堆叠(即第三层方括号),可将 arr 第三层括号里面的东西视为一个整体.可用于RGB单通道图合成多通道图。

eg:

import numpy as np
a=[[10,11,12],[13,14,15]]
b=[[1,2,3],[4,5,6]]
c=np.dstack((a,b))
print(c)result:
[[[10 1][11 2][12 3]][[13 4][14 5][15 6]]]

建议收藏,欢迎下次查阅。

玩转Numpy——stack(),hstack(),vstack(),dstack()函数简单介绍相关推荐

  1. [Numpy]stack(), hstack(), vstack(), concatenate()

    部分资料来源于网络,仅做个人学习之用 目录 0. axis取值 1. stack() 2. hstack() 3. vstack() 4. concatenate() 0. axis取值 在numpy ...

  2. python中mean的用法_python 的numpy库中的mean()函数用法介绍

    1. mean() 函数定义: numpy.mean(a, axis=None, dtype=None, out=None, keepdims=)[source] Compute the arithm ...

  3. python 的numpy库中的mean()函数用法介绍

    这篇文章主要介绍了python 的numpy库中的mean()函数用法介绍,具有很好对参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 mean() 函数定义: 2 mean()函数功能: 求取均 ...

  4. python average函数怎么用_python 的numpy库中的mean()函数用法介绍

    1. mean() 函数定义: numpy.mean(a, axis=None, dtype=None, out=None, keepdims=)[source] Compute the arithm ...

  5. c++自定义函数简单介绍

    大家好, 今天给大家介绍一下自定义函数. 如有错误请在评论区指出 正文: 1.简单介绍: 函数是一组一起执行一个任务的语句.每个 C++ 程序都至少有一个函数,即主函数 main() ,所有简单的程序 ...

  6. Java 的toString() 和 equals()函数简单介绍

    toString() 和 equals() 都是java面试中经常问到的地方. 特别是1条经典问题:  equals 和 "==" 的区别... 本文就从简单介绍下这两个objec ...

  7. numpy中的cov(方差计算)简单介绍

    协方差矩阵的计算公式可以参考这一篇博文 协方差矩阵 官方文档介绍 简单使用介绍 有下面一个例子,计算数组[1,2,3]和[1,1,1]的协方差矩阵 import numpy as npX = np.a ...

  8. php 常用简单函数,PHP中常用函数简单介绍

    1. var_dump  打印变量的相关信息 void var_dump ( $expression [, 此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值.数组将递归展开值,通过缩进显 ...

  9. python datetime函数介绍_Python datetime包函数简单介绍

    一.datetime包(上接连载7内容) 1.函数:datetime (1)用法:输入一个日期,来返回一个datetime类​ (2)格式:datetime.datetime(年,月,日,hour=, ...

最新文章

  1. 手把手教你用Keras进行多标签分类(附代码)_数据派THU-CSDN博客 (翻译:程思衍校对:付宇帅)
  2. Eclipse 报 “Exception in thread main java.lang.OutOfMemoryError: Java heap space ”错误的解决办法...
  3. Google学术发布2019年最有影响力的7篇论文(附下载链接)
  4. JAVA——文档注释(javavdoc)通用注释-超链接@see与@link的使用
  5. c语言dynamic变量,C# dynamic关键字的使用方法
  6. LeetCode 212. 单词搜索 II(Trie树+DFS)
  7. SpringCloud(3)---最简单的 SpringCloud 教程
  8. [贪心][高精度][NOIP]国王游戏
  9. 在ASP.NET MVC中进行TDD开发
  10. D3/Echarts/G2的对比分析
  11. 图论之单源最短路径问题
  12. python文件的路径_python3 文件及文件夹路径相关
  13. WinCC7.3 Win764位系统安装教程
  14. Win10菜单栏卡顿无响应的解决方法
  15. python怎么调用类中的函数_类中的python函数调用
  16. 桌面点击:右键点击-显示设置,提示“该文件没有与之关联的程序来执行该操作“解决方法总结
  17. 关于测试,我发现了哪些新大陆
  18. INSTALL_FAILED_NO_MATCHING_ABIS 的解决办法
  19. 有道文档翻译导出文档_翻译文档的5个技巧
  20. 字符串(1) : 首字母转大写/小写

热门文章

  1. NLP分析小说人物关系,找找主人公的真爱。
  2. pyqt5讲解10:布局管理讲解大全
  3. python 批量读取文件夹的动漫美女图并显示
  4. VTK:vtkBorderWidget用法实战
  5. boost::replace相关的测试程序
  6. boost::math::barycentric_rational用法的测试程序
  7. boost::math::barycentric_rational相关用法的测试程序
  8. boost::contract模块实现overload的测试程序
  9. ITK:从三个标量图像组成矢量
  10. ITK:注册IO工厂RegisterIOFactories