Numpy懂不懂?
各位看官里面请,欢迎来听慕寒的慕言慕语。上回说到,Numpy有自己的数据结构,还能对数组做相关操作。那么,这一回,慕寒将和各位一起继续探讨一下Numpy对数组的一些操作:连接与分割、修改数组元素,让我们一起打开软件,掏出键盘。。。。。。
这一回慕寒将会涉及到本专业的一些专有名词,希望各位看官不要吃惊~在慕寒的专业中呢,有一个重要的分支便是遥感。而在在处理遥感影像时往往需要对多幅遥感影像进行拼接操作,如果将每一幅遥感影像数字化成数组的形式,那么遥感影像的拼接操作就相当于多个数组的连接操作。而这无敌的Numpy库则为使用者提供了一些可用于数组连接的函数,快来瞅瞅。
concatenate
沿某一轴连接数组序列
stack
沿着新的轴加入新数组序列
hstack
水平(列)方向堆叠数组序列
vstack
竖直(行)方向堆叠数组序列
其中最常用的当是“concatenate”函数了,下面慕寒给出这个函数的语法结构还有一些参数的说明。
a1,a2,…
同类型的数组序列
axis
沿着连接的轴,默认为0(竖直连接)
来了来了,慕寒要放出案例了,各位看官有兴趣的话可以拿出键盘一起敲一敲~这里慕寒以两幅遥感影像中的局部数据为例来展示该函数的具体使用,代码如下:
连接后的输出就是这个样子的了,如果各位没有不小心敲错了的话,那咱俩是一样的:


说完这数组的连接啊,那咱就来看看这数组的分割。遥感中的影像裁剪就类似于对数组进行分割操作。numpy库中包括三种数组分割函数,一起来瞅瞅他们啥样子。

数组分割函数
split
将数组分割成多个子数组
hsplit
按列分割
vsplit
按行分割

ary
用于分割的数组
indices_or_sections
如果是数组,即沿该轴切分(左开右闭)如果是整数,即将数组按该数均分axis
默认为0,水平切分;为1时,竖直切分
键盘敲起来~:
猜猜看,咱俩输出一不一样:




END


码字不易
多多关注
点分享
点收藏
点点赞
点在看
评论