Python numpy和scipy中没有直接插0的函数和方法,这里使用numpy.insert来实现。
1,numpy.insert的用法
下述是官方文档给出的解释:
下面是个人的理解:
numpy.insert可以有三个参数(arr,obj,values),也可以有4个参数(arr,obj,values,axis):
- 第一个参数arr是一个数组,可以是一维的也可以是多维的,在arr的基础上插入元素
- 第二个参数obj是元素插入的位置
- 第三个参数values是需要插入的数值
- 第四个参数axis是指示在哪一个轴上对应的插入位置进行插入
- 如果第四个参数没有给出,那么就默认为先对arr进行flatten操作,变为一维数组,然后再在对应的位置上插入对应的值。
下面举例说明:
这里axis参数没有给出,相当于如下操作:
axis参数给出的举例如下:
当然,也可以在多个位置插入多个数据,举例如下:
2,利用numpy.insert插值(插入0)
首先产生一个随机数组
插值(插0)操作是想在上述每个数值后面都插入0, 插入的0的个数由插值倍数决定,比如,3倍插值就是插入2个0,变成如下形式:
9 0 0 4 0 0 3 0 0 3 0 0 3 0 0 3 0 0 1 0 0 5 0 0 3 0 0 1 0 0
利用如下操作可以实现:
最后再将crr变成一维数组即可,即
到此这篇关于numpy.insert用法及内插插0的方法的文章就介绍到这了,更多相关numpy.insert用法及内插插0内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!