数组的增加,删除,插入,合并
首先导包import numpy as np
append()
在数据末尾做追加,有返回值,不改变原来数组的结构
如果是多维数组,append后变成一维数组,在末尾添加
如果是多维数组添加多维数组,append后也变成一维数组
arr1=np.arange(10,20)
arr2=np.arange(20,30)
arr3=np.arange(20).reshape(4,5)
arr4=np.arange(20).reshape(4,5)
print(arr1)
print(arr2)
print(arr3)
print()
print('append')
print('one dimension')
print(np.append(arr1,100))
print('original',arr1)
print(np.append(arr3,100))
print('original',arr3)
print(np.append(arr1,arr2))
print('##########')
print('mutiple append one')
print(np.append(arr3,arr1))
print(np.append(arr3,arr1))
print('##############')
print('mutiple dimension')
print(np.append(arr3,arr4))
insert()
多维数组在指定位置上加入一个值,默认当作一维数组进行操作,返回一维数组
添加的value值是一个一维数组或列表或单个值,不能插入多维数组
如果要往多维数组中添加值,需要指定axis,并且添加的行或者列元素长度和插入的元素长度相同,否则报错
arr1=np.arange(10,20)
arr2=np.arange(20,30)
arr3=np.arange(20).reshape(4,5)
arr4=np.arange(20).reshape(4,5)
arr5=np.array([1,1,1,1,1])
arr6=np.array([1,1,1,1])
print('###########')
print('insert a value')
print(np.insert(arr1,0,100))
print(np.insert(arr3,0,100))
print('insert one dimension array')
print(np.insert(arr1,0,arr2))
print(np.insert(arr1,0,[100,200]))
print('display error code')
try:
print(np.insert(arr3,0,arr4))
except Exception as e:
print(e)
try:
print(np.insert(arr1,0,arr3))
except Exception as e:
print(e)
print('#################')
print('insert a array to mutiple dimension array')
print(np.insert(arr3,0,arr5,axis=0))
print(np.insert(arr3,0,arr6,axis=1))
delete()
多维数组不指定axis会改变多维数组为一维数组,指定axis可以删除一行或者一列
arr1=np.arange(10,20)
arr2=np.arange(20,30)
arr3=np.arange(20).reshape(4,5)
arr4=np.arange(20).reshape(4,5)
arr5=np.array([1,1,1,1,1])
arr6=np.array([1,1,1,1])
print(np.delete(arr1,0))
print(arr1)
print('##############')
print(np.delete(arr3,0))
print(np.delete(arr3,0,axis=0))
print(np.delete(arr3,0,axis=1))
print(arr3)
concatenate()
多维数组axis指定行或者列合并
arr1=np.arange(10,20)
arr2=np.arange(20,30)
arr3=np.arange(20).reshape(4,5)
arr4=np.arange(20).reshape(4,5)
arr5=np.array([1,1,1,1,1])
arr6=np.array([1,1,1,1])
print(np.concatenate((arr1,arr2)))
print(np.concatenate((arr3,arr4),axis=1))
print(np.concatenate((arr3,arr4),axis=0))