python numpy 矩阵堆叠实例

yipeiwu_com5年前Python基础

在实际操作中,遇到了矩阵堆叠的操作,本来想着自己写一个函数,后来想,应该有库函数,于是一阵找寻

import numpy as np
a = np.array([1,2,3])
b = np.array([4,5,6])
np.stack((a,b)) #默认行堆叠

输出:

array([[1, 2, 3],
  [4, 5, 6]])

np.vstack((a, b))

输出:

array([[1, 2, 3],
  [4, 5, 6]])
np.hstack((a, b))

输出:

array([1, 2, 3, 4, 5, 6])

简单解释一下上面的代码:其实主要是一个函数,stack(),这个函数其实包含了各种堆叠方式,我们上面的例子是针对二维矩阵的,其实我们大部分时候的操作都是针对二维矩阵的,为了方便,所以又定义了两个函数vstack()进行垂直的堆叠(vertically ),hstack()进行水平堆叠(horizontally)

函数stack()有个参数,axis,可以设置堆叠的维度,默认是0,其实和vstack()是一个效果,当设置成1的时候,结果如下

np.stack((a,b),axis=1)

输出:

array([[1, 4],
  [2, 5],
  [3, 6]])

从效果看,相当于按照原来a的第二维度,也就是列,一列一列的取出来,按行拼成了一个矩阵。

那么,hstack()的效果能不能利用stack()实现呢?我这里是没有探索出来,欢迎知道的童靴指教,不过hstack()的效果其实和concatenate是一样的

np.concatenate((a,b))
输出:
array([1, 2, 3, 4, 5, 6])

以上这篇python numpy 矩阵堆叠实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中的函数递归和迭代原理解析

python中的函数递归和迭代原理解析

这篇文章主要介绍了python中的函数递归和迭代原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一、递归 1、递归的介绍...

python类继承用法实例分析

本文实例讲述了python类继承用法。分享给大家供大家参考。具体如下: help('object') # test class Class1(object): """ Cla...

python保存二维数组到txt文件中的方法

一个非常繁琐粗暴的方法,python属于入门级水平,就酱先备份一下,如果有更好的方法再更新 arrs=[[2,15,48,4,5],[6,7,6,4,1],[2,3,6,6,7],[...

5款非常棒的Python工具

5款非常棒的Python工具

工欲善其事必先利其器,一个好的工具能让起到事半功倍的效果,Python社区提供了足够多的优秀工具来帮助开发者更方便的实现某些想法,下面这几个工具给我的工作也带来了很多便利,推荐给追求美好...

Python 多维List创建的问题小结

背景 最近在学Python,我觉得学习一个新语言最好的方式就是写一个简单的项目,所以就打算写一个简单的俄罗斯方块游戏。那么在写的过程中遇到了一个小问题。 def __init__...