添加数组元素
append()函数
在数组的末尾添加元素
from numpy import array,append
a=array([[1,2,3],[4,5,6]])
b=append(a,[[1,2,3]])
print(b)
结果:
二维数组变成了一维数组。
不改变数组维度的情况下在数组末尾添加元素
from numpy import array,append
a=array([[1,2,3],[4,5,6]])
b=append(a,[[1,2,3]],axis=0)
print(b)
结果:
append()函数的参数axis也可以设置为1,表示元素会添加在数组的列方向上,也就是说,数组的列数会增加,而行数不变。
from numpy import array,append
a=array([[1,2,3],[4,5,6]])
b=append(a,[[1,2],[3,4]],axis=1)
print(b)
结果:
insert()函数
from numpy import array,insert
a=array([[1,2,3],[4,5,6]])
b=insert(a,1,[2,2,2])
print(b)
结果:
二维数组变成了一维数组,且插入的元素位于数组索引值1(第2个元素)之前。
在不改变数组维度的情况下,在数组的指定位置插入元素
from numpy import array,insert
a=array([[1,2,3],[4,5,6]])
b=insert(a,1,[9,9,9],axis=0)
c=insert(a,1,[9,9],axis=1)
print(b)
print(c)
结果:
删除数组元素
from numpy import array,delete
a=array([[1,2,3],[4,5,6],[7,8,9]])
a1=delete(a,2)
a2=delete(a,2,axis=0)
a3=delete(a,2,axis=1)
print(a1)
print(a2)
print(a3)
结果:
处理数组的缺失值
import numpy
a=numpy.array([1,2,3,4,5,numpy.nan])
print(a)
print(numpy.isnan(a))
结果:
np.nan即表示缺失值
利用isnan()函数对缺失值进行填充
import numpy
a=numpy.array([1,2,3,4,5,numpy.nan])
a[numpy.isnan(a)]=0
print(a)
结果:
处理数组的重复值
import numpy
a=numpy.array([1,2,5,6,4,5,6,1,2,3,8])
a1=numpy.unique(a)
a2=numpy.unique(a,return_counts=True)
print(a1)
print(a2)
结果:
调用unique()函数对数组arr进行去重处理。
unique()函数添加了一个参数return_counts,并设置参数值为True,用于查看去重后数组中的元素在原数组中出现的次数
拼接数组
concatenate()函数
import numpy
a=numpy.array([[1,2,3],[4,5,6]])
b=numpy.array([[11,22,33],[44,55,66]])
a1=numpy.concatenate((a,b),axis=0)
b1=numpy.concatenate((a,b),axis=1)
print(a1)
print(b1)
结果:
hstack()函数
以水平堆叠的方式拼接数组
import numpy
a=numpy.array([[1,2,3],[4,5,6]])
b=numpy.array([[11,22,33],[44,55,66]])
c=numpy.hstack((a,b))
print(c)
结果:
vstack()函数
以垂直堆叠的方式拼接数组
import numpy
a=numpy.array([[1,2,3],[4,5,6]])
b=numpy.array([[11,22,33],[44,55,66]])
c=numpy.vstack((a,b))
print(c)
结果:
拆分数组
split()函数
指定的份数将一个数组均分为多个数组
import numpy
a=numpy.array([1,2,3,4,5,6,7,8,9,10,11,12])
a1=numpy.split(a,2)
a2=numpy.split(a,4)
print(a1)
print(a2)
结果:
按照指定的索引位置拆分数组
import numpy
a=numpy.array([1,2,3,4,5,6,7,8,9,10,11,12])
a1=numpy.split(a,[2,6])
a2=numpy.split(a,[2,5,8])
print(a1)
print(a2)
结果:
hsplit()函数 vsplit()函数
hsplit()将一个数组横向拆分为多个数组
vsplit()将一个数组纵向拆分为多个数组
import numpy
a=numpy.array([[1,2,3,4,5,6],[1,2,3,4,5,6],[7,8,9,10,11,12],[7,8,9,10,11,12]])
a1=numpy.hsplit(a,2)
a2=numpy.vsplit(a,2)
print(a1)
print(a2)
结果: