numpy数组叠加的实现示例

 更新时间:2022年08月09日 09:36:53   作者:BruceJoneses  
本文主要介绍了numpy数组叠加的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

前言

针对于一维数组的存储方式,即(n,)存储为列向量

一、创建一个array

使用np.arange()创建一个一维数组,或者np.array()将多维列表转成np格式的ndarray

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

二、使用np.r_和np.c_进行数组相加

1.对一维数组的叠加

代码如下(示例):

import numpy as np
a = np.array([1,2,3])     
'''a = [1 
        2
        3]'''
b = a.repeat(3)
'''b = [1
        1   
        1
       ...
        3]'''
c = np.tile(a ,3)
print(b.shape)      #(9,) 列向量
print(c.shape)      #(9,) 列向量
d = np.r_[b,c]    #按列相加 还是列向量(只是numpy方便显示,为一行数组),还是一维
print('d:', d)
'''d: [1 1 1 2 2 2 3 3 3 1 2 3 1 2 3 1 2 3]'''
e = np.c_[b,c]   #按行相加 得到(9,2)的二维数组   
print('e:', e)
'''e: [[1 1]
       [1 2]
       [1 3]
       [2 1]
       [2 2]
       [2 3]
       [3 1]
       [3 2]
       [3 3]]'''

2.将数组转成二维

代码如下(示例):

a = np.array([1,2,3]).reshape(1,3)     #都初始为二维数组,就可以按照显示的行列堆叠
b = a.repeat(3).reshape(1,-1)
c = np.tile(a ,3)
print(b.shape)      #(1,9) 二维数组
print(c.shape)      #(1,9) 二维数组
#二维之后就可按照显示的行列顺序进行叠加了
d = np.r_[b,c]    #按列相加,得到(2,9)的二维数组
print('d:', d)    
'''d: [[1 1 1 2 2 2 3 3 3]
       [1 2 3 1 2 3 1 2 3]]'''
e = np.c_[b,c]   #按行相加 得到(1,18)的二维数组   
print('e:', e)
'''e: [[1 1 1 2 2 2 3 3 3 1 2 3 1 2 3 1 2 3]]'''

将数组转成二维,就可按照显示的行列进行相堆叠了

3. hstack以及vstack

a = np.array([1,2,3])
b = a.repeat(3)
c = np.tile(a ,3)
bc_h = np.hstack((b, c))    
print('bc_h:',bc_h)
'''bc_h: [1 1 1 2 2 2 3 3 3 1 2 3 1 2 3 1 2 3]'''
bc_v = np.vstack((b, c))    
print('bc_v:',bc_v)
'''bc_v: [[1 1 1 2 2 2 3 3 3]
          [1 2 3 1 2 3 1 2 3]]'''
d = np.arange(9).reshape(1,9)
# bcd_h = np.hstack((b, c, d))   #使用hstack,维度必须相同。不相同会报错
# print('bcd_h:',bcd_h)

bcd_v = np.vstack((b, c, d))    
print('bcd_v:',bcd_v)
'''bcd_v: [[1 1 1 2 2 2 3 3 3]
           [1 2 3 1 2 3 1 2 3]
           [0 1 2 3 4 5 6 7 8]]'''

在进行vstack叠加时,默认将一维数组元素变成了二维。

但是二维与三维叠加,二维不会变成三维。即一维可以与二维可以进行vstack

hstack不会改变维度,所有要求相叠加的所有数组维度一样

到此这篇关于numpy数组叠加的实现示例的文章就介绍到这了,更多相关numpy数组叠加内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python正则表达式实现截取成对括号的方法

    Python正则表达式实现截取成对括号的方法

    这篇文章主要介绍了Python正则表达式实现截取成对括号的方法,涉及Python正则匹配相关操作技巧,需要的朋友可以参考下
    2017-01-01
  • 使用python执行shell脚本 并动态传参 及subprocess的使用详解

    使用python执行shell脚本 并动态传参 及subprocess的使用详解

    这篇文章主要介绍了使用python执行shell脚本 并动态传参 及subprocess的使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • Python urllib库的使用指南详解

    Python urllib库的使用指南详解

    所谓网页抓取,就是把URL地址中指定的网络资源从网络流中读取出来,保存到本地。 在Python中有很多库可以用来抓取网页,本文将讲解其中的urllib库,感兴趣的可以了解一下
    2022-04-04
  • pytorch中with torch.no_grad():的用法实例

    pytorch中with torch.no_grad():的用法实例

    最近在看别人写的代码,遇到经常使用with torch.no_grad(),所以下面这篇文章主要给大家介绍了关于pytorch中with torch.no_grad():用法的相关资料,需要的朋友可以参考下
    2022-03-03
  • Pandas分组函数groupby的用法详解

    Pandas分组函数groupby的用法详解

    在数据分析时,经常需要将数据分成不同的群组,pandas中的groupby()函数可以完美地完成各种分组操作,本文就来介绍一下Pandas分组函数groupby的用法,感兴趣的可以了解一下
    2024-01-01
  • 关于Python-faker的函数效果一览

    关于Python-faker的函数效果一览

    今天小编就为大家分享一篇关于Python-faker的函数效果一览,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • Python原始字符串与Unicode字符串操作符用法实例分析

    Python原始字符串与Unicode字符串操作符用法实例分析

    这篇文章主要介绍了Python原始字符串与Unicode字符串操作符用法,结合实例形式分析了Python针对原始字符与Unicode字符的操作符用法,需要的朋友可以参考下
    2017-07-07
  • pip命令突然无法使用问题以及解决

    pip命令突然无法使用问题以及解决

    当你在使用pip安装Python库时遇到问题,可以尝试以下两种解决方案,第一种是直接在Scripts文件夹内使用CMD命令进行安装,第二种是将Scripts的路径设置为系统环境变量,这样就可以直接在dos中使用pip install进行安装了,以上解决方案仅供参考,如有更好的方法欢迎交流分享
    2024-10-10
  • python 多线程与多进程效率测试

    python 多线程与多进程效率测试

    这篇文章主要介绍了python 多线程与多进程效率测试,在Python中,计算密集型任务适用于多进程,IO密集型任务适用于多线程、接下来看看文章得实例吧,需要的朋友可以参考一下哟
    2021-10-10
  • Python-OpenCV中的cv2.inpaint()函数的使用

    Python-OpenCV中的cv2.inpaint()函数的使用

    大多数人会在家里放一些旧的退化照片,上面有一些黑点,一些笔画等。你有没有想过恢复它?本文就来介绍一下方法,感兴趣的可以了解一下
    2021-06-06

最新评论