数组元素的添加与删除 相关函数列表如下:
函数
元素及描述
resize
返回指定形状的新数组
append
将值添加到数组末尾
insert
沿指定轴将值插入到指定下标之前
delete
删掉某个轴的子数组,并返回删除后的新数组
unique
查找数组内的唯一元素
1)
返回指定大小的新数组
numpy.resize(arr, shape)
arr:要修改大小的数组
shape:返回数组的新形状
新数组小于原始数组
>>> import numpy as np
>>> a = np.array([[1,2,3],[4,5,6]])
>>> a
array([[1, 2, 3],
[4, 5, 6]])
>>> b = np.resize(a,(2,2))
>>> b
array([[1, 2],
[3, 4]])
新数组大于原始数组
>>> import numpy as np
>>> a = np.array([[1,2,3],[4,5,6]])
>>> a
array([[1, 2, 3],
[4, 5, 6]])
>>> c = np.resize(a,(3,3))
>>> c
array([[1, 2, 3],
[4, 5, 6],
[1, 2, 3]])
>>> d = np.resize(a,(3,4))
>>> d
array([[1, 2, 3, 4],
[5, 6, 1, 2],
[3, 4, 5, 6]])
总结:
如果新数组大小小于原始大小,会默认按行对原始数组进行取值,直到取够为止
如果新数组大小大于原始大小,会默认按行重复使用原始数组中的元素,会包含原始数组中的元素的副本。
2)
在数组的末尾添加值。 追加操作会分配整个数组,并把原来的数组复制到新数组中。 此外,输入数组的维度必须匹配否则将生成ValueError。
numpy.append(arr, values, axis=None)
arr:输入数组
values:要向arr添加的值,需要和arr形状相同(除了要添加的轴)
axis:默认为 None
当axis=None时,是横向加成,对添加的元素的个数和类型无要求,返回总是为一维数组
当axis=0时,增加的是原始数组的行数,因此添加的列表必须是二维[[]]。若要添加一行,子列表元素个数是1[[]],添加二行,子列表元素个数是2[[],[]]。子列表元素个数要与原始数组的列数相同。
当axis=1时,增加的是原始数组的列数,因此添加的列表元素个数要与原始数组的行数相同,增加的列数取决于子列表的元素个数
不定义axis,返回的都是一维数组
>>> import numpy as np
>