NumPy实现数组的拼接和分裂
一.数组的拼接
import numpy as np
x=np.array([,,])
x2=np.array([,,])
np.concatenate([x,x2])
输出:array([1, 2, 3, 4, 5, 6])
grid=np.array(
[[,,],
[,,]])
np.concatenate([grid,grid])
输出:
array([[, , ],
[, , ],
[, , ],
[, , ]])
np.concatenate([grid,grid],axis=)
输出:
array([[, , , , , ],
[, , , , , ]])
如果我们不加上按照哪个轴(axis)进行拼接,那么则默认为通过第0个轴进行拼接,第0个轴是我们数组的横轴
第一个轴则是数组的数轴,我们平时画xy轴二维平面坐标系的时候,也是按照先横轴后数轴的形式来画的,这也是我们计算机的习惯。如果您不想利用这种利用加参数表示哪个轴的方式,则可以直接利用新的函数,vstack(垂直拼接),和hstack(水平拼接)进行数组的拼接。v在英语里是vertical的意思,h是honrizontal的意思,这两个英语单词在我们的安卓开发当中十分常用,一个是表示了线性布局的垂直布局,一个是表示了线性布局是水平布局。下面展示我们利用更简单的函数进行的数组的拼接:
np.vstack([grid,grid])
array([[, , ],
[, , ],
[, , ],
[, , ]])
np.hstack([grid,grid])
array([[, , , , , ],
[, , , , , ]])
得解也。
二.数组的分裂
第一种方法,按照数组的节点进行分裂,split函数当中的中括号表示分裂节点的位置:
>>> x=np.array([,,,,,,])
>>> x1,x2,x3=np.split(x,[,])
>>> x1
array([, ])
>>> x2
array([, ])
>>> x3
array([ , , ])
第二种方法:
然后数组的分裂也具备了前缀为v或者h的函数,首先建立二维gird数组,利用如下:
>>> grid
array([[ , , , ],
[ , , , ],
[ , , , ],
[, , , ]])
利用vsplit进行分裂:
>>> x1,x2=np.vsplit(gird,[])
>>> x1
array([[, , , ],
[, , , ]])
>>> x2
array([[ , , , ],
[, , , ]])
第三种方法:利用hsplit进行分裂
>>> x1,x2=np.hsplit(gird,[])
>>> x1
array([[ , ],
[ , ],
[ , ],
[, ]])
>>> x2
array([[ , ],
[ , ],
[, ],
[, ]])
中括号当中的2表示的是相对分裂点的位置,可以根据自己的需求进行相应的改变。
NumPy实现数组的拼接和分裂的更多相关文章
- Numpy数组基本操作(数组索引,数组切片以及数组的形状,数组的拼接与分裂)
一:数组的属性 每个数组都有它的属性,可分为:ndim(数组的维度),shape(数组每个维度的大小),size(数组的总大小),dtype(数组数据的类型) 二:数组索引 和python列表一样,N ...
- numpy 数组的拼接
一.数组的拼接 1.水平拼接 a.格式 np.hstack((数组1, 数组2)) # 注意: 值是元祖 # 0轴长要相同 b.例子 import numpy as np arr1 = np.aran ...
- NumPy 迭代数组
NumPy 迭代数组 NumPy 迭代器对象 numpy.nditer 提供了一种灵活访问一个或者多个数组元素的方式. 迭代器最基本的任务的可以完成对数组元素的访问. 接下来我们使用 arange() ...
- 找出numpy array数组的最值及其索引
在list列表中,max(list)可以得到list的最大值,list.index(max(list))可以得到最大值对应的索引 但在numpy中的array没有index方法,取而代之的是where ...
- python 工具 字符串转numpy浮点数组
不同的数字之间使用 空格“ ”,“$”,"*"等隔开,支持带小数点的字符串NumArray=str2num(LineString,comment='#')将字符串中的所有非Doub ...
- Numpy | 04 数组属性
NumPy 数组的维数称为秩(rank),一维数组的秩为 1,二维数组的秩为 2,以此类推. 在 NumPy中,每一个线性的数组称为是一个轴(axis),也就是维度(dimensions).比如说,二 ...
- numpy使用数组进行数据处理
numpy使用数组进行数据处理 meshgrid函数 理解: 二维坐标系中,X轴可以取三个值1,2,3, Y轴可以取三个值7,8, 请问可以获得多少个点的坐标? 显而易见是6个: (1,7)(2,7) ...
- js 数组的拼接
数组的拼接 var a = [1,2,3,4,5,6]; var b=["foo","bar", "fun"]; 最终的结果是: [ 1,2 ...
- python数据分析 Numpy基础 数组和矢量计算
NumPy(Numerical Python的简称)是Python数值计算最重要的基础包.大多数提供科学计算的包都是用NumPy的数组作为构建基础. NumPy的部分功能如下: ndarray,一个具 ...
随机推荐
- C#函数的递归
using System; namespace ConsoleApp3 { class Program { static void Main(string[] args) { ); Console.W ...
- Java学习 1.2——简述JVM,JRE,JDK的关系
在上一节中,我们了解了JVM相关的知识,有兴趣的话可以先去看一下: Java学习 1.1——(JVM介绍)Java为什么能够跨平台? 这个篇主要分享的是JRE,JDK,JVM三者的区别,简言之: JD ...
- HttpClientExtensions去了哪里
使用HttpClient实现http请求是非常常见的方式,有一个HttpClient的拓展类HttpClientExtensions提供了更多的拓展方法,包括但不限于 PostAsJsonAsync ...
- iOS中点击按钮复制指定内容
话不多说,直接上图和代码:
- Java反射01 : 概念、入门示例、用途及注意事项
1.Java反射定义 本文转载自:https://blog.csdn.net/hanchao5272/article/details/79360452 官方定义如下: Reflection enabl ...
- bay——巡检RAC命令_版本.txt
df -lhhostnamecat /etc/hostsifconfig ps -ef | grep tnsps -ef | grep asmps -ef | grep ora_ ls -l /dev ...
- 初级模拟电路:3-9 BJT三极管实现逻辑门
回到目录 BJT晶体管可以实现逻辑门,事实上,在场效应管被发明用于集成电路以前,各种逻辑门芯片中的电路就是用BJT晶体管来实现的.最早人们使用二极管与BJT组合来实现逻辑门,这个称为二极管-晶体管逻辑 ...
- CodeForces - 722C(思维+倒着并查集)
题意 https://vjudge.net/problem/CodeForces-722C 给你一个由n个非负整数组成的数列 a1 ,a2 ,...,an . 你将要一个一个摧毁这个数列中的数. ...
- Android程序中,内嵌ELF可执行文件-- Android开发C语言混合编程总结
前言 都知道的,Android基于Linux系统,然后覆盖了一层由Java虚拟机为核心的壳系统.跟一般常见的Linux+Java系统不同的,是其中有对硬件驱动进行支持,以避开GPL开源协议限制的HAL ...
- css 知识点,你有可能不知道欧!
1.[定位特性] 绝对定位和固定定位,同时设置left和right等同于隐式的设置宽度. <style> span{ position:fixed; left:30px; right:30 ...