NumPy 重要知识点总结
一、数组操作之连接数组
用于将多个同形状数组沿指定轴合并,核心函数包括:
concatenate () 函数
- 原型:
numpy.concatenate((a1, a2, ...), axis) - 作用:沿指定轴连接多个同类型、同形状数组(默认 axis=0,垂直连接)。
- 示例:
2×2数组a=[[0,1],[2,3]]和b=[[4,5],[6,7]],沿 axis=0 连接后为4×2数组[[0,1],[2,3],[4,5],[6,7]]。 - 代码:

- 原型:
stack () 函数
- 原型:
numpy.stack(arrays, axis) - 作用:沿新轴连接数组序列(会增加维度)。
- 示例:
2×2数组a和b,沿 axis=0 堆叠后为2×2×2三维数组[[[0,1],[2,3]], [[4,5],[6,7]]]。 - 代码:

- 原型:
hstack () 函数
- 作用:水平堆叠数组(沿 axis=1,列方向)。
- 示例:
2×2数组x=[[0,1],[2,3]]和y=[[4,5],[6,7]],水平堆叠后为2×4数组[[0,1,4,5],[2,3,6,7]]。 - 代码:

vstack () 函数
- 作用:垂直堆叠数组(沿 axis=0,行方向)。
- 示例:
2×2数组a和b,垂直堆叠后与concatenate(a,b, axis=0)效果一致,为4×2数组。 - 代码:

二、数组操作之分割数组
用于将数组沿指定轴拆分为子数组,核心函数包括:
split () 函数
- 原型:
numpy.split(ary, indices_or_sections, axis=0) - 作用:沿指定轴分割数组为子数组。
- 参数:
indices_or_sections:若为整数,平均切分;若为数组,指定切分位置(左开右闭);axis:默认 0(横向切分),1 为纵向切分。
- 示例:
1×12数组[0-11],split(x,3)平均分为 3 个1×4子数组;split(x,[2,5])按位置 2 和 5 切分为[0-1]、[2-4]、[5-11]。 - 代码:


- 原型:
hsplit () 函数
- 作用:水平分割数组(沿 axis=1,列方向)。
- 代码:

vsplit () 函数
- 作用:垂直分割数组(沿 axis=0,行方向)。
- 代码:

三、数组操作之元素添加与删除
用于调整数组元素数量或去重,核心函数包括:
resize () 函数
- 作用:修改数组形状,若新形状大于原数组,重复原数据填充;若小于,截断数据。
- 示例:
2×3数组[[1,2,3],[4,5,6]]调整为3×2后为[[1,2],[3,4],[5,6]]。 - 代码:

append () 函数
- 作用:向数组添加元素,默认展平数组;指定 axis 时沿该轴添加(需形状匹配)。
- 示例:
2×3数组a,append(a, [[7,8,9]], axis=0)沿行添加后为3×3数组。 - 代码:

insert () 函数
- 原型:
numpy.insert(arr, obj, values, axis) - 作用:在指定索引前插入值,指定 axis 时沿该轴插入(值会广播匹配形状)。
- 代码:
- 原型:
delete () 函数
- 原型:
numpy.delete(arr, obj, axis) - 作用:删除指定子数组,默认展平数组;指定 axis 时沿该轴删除。
- 代码:

- 原型:
unique () 函数
- 作用:去除数组重复元素,返回排序后的唯一值数组。
- 扩展参数:
return_counts=True可返回各元素在原数组中的出现次数。 - 代码:

四、课堂练习



