numpy数组叠加的实现示例
作者:BruceJoneses 时间:2021-09-29 11:59:18
前言
针对于一维数组的存储方式,即(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不会改变维度,所有要求相叠加的所有数组维度一样
来源:https://blog.csdn.net/qq_41893964/article/details/124896945
标签:numpy,数组叠加
0
投稿
猜你喜欢
MySQL字符集乱码及解决方案分享
2024-01-21 12:00:43
详解MySQL中的NULL值
2024-01-14 16:05:00
MySQL 的覆盖索引与回表的使用方法
2024-01-20 22:40:37
Mysql实现企业级日志管理、备份与恢复的实战教程
2024-01-13 16:30:16
Web 标准设计实践:Google 的首页
2008-10-12 12:14:00
Python HTTP客户端自定义Cookie实现实例
2023-12-16 01:19:30
OpenCV 轮廓检测的实现方法
2023-06-16 01:40:48
Python中号称神仙的六个内置函数详解
2021-02-04 13:41:22
python接入使用百度翻译流程
2022-11-26 01:01:43
perl生成特定碱基比例的随机序列的代码
2023-12-08 05:27:07
详解python之多进程和进程池(Processing库)
2022-07-18 23:23:58
asp利用XMLHTTP无刷新自动更新数据
2007-08-23 13:16:00
Windows下Anaconda2安装NLTK教程
2022-08-11 04:30:49
mysql 5.5 开启慢日志slow log的方法(log_slow_queries)
2024-01-15 15:05:36
Python面向对象程序设计之私有变量,私有方法原理与用法分析
2022-04-17 01:37:50
利用Python中xlwt模块操作excel的示例详解
2023-08-16 18:51:47
深入flask之异步非堵塞实现代码示例
2021-12-27 17:37:25
asp使用XMLHTTP下载远程数据输出到浏览器
2007-11-04 10:34:00
ElasticSearch核心概念
2023-11-29 00:49:05
Python pymongo模块常用操作分析
2021-06-13 11:01:05