NumPy 教程 之 Numpy 数组操作 14

简介: 本教程介绍 NumPy 中的数组操作,包括修改形状、翻转、维度调整、连接与分割等。特别聚焦于维度操作,如使用 `broadcast`、`broadcast_to` 实现广播效果,利用 `expand_dims` 扩增维度,以及通过 `squeeze` 函数移除一维条目。例如,对形状为 (1,3,3) 的数组应用 `np.squeeze()` 后,可简化为 (3, 3),从而优化数据结构以满足不同计算需求。

NumPy 教程 之 Numpy 数组操作 14

Numpy 数组操作

Numpy 中包含了一些函数用于处理数组,大概可分为以下几类:

修改数组形状
翻转数组
修改数组维度
连接数组
分割数组
数组元素的添加与删除

修改数组维度

维度 描述
broadcast 产生模仿广播的对象
broadcast_to 将数组广播到新形状
expand_dims 扩展数组的形状
squeeze 从数组的形状中删除一维条目

numpy.squeeze

numpy.squeeze 函数从给定数组的形状中删除一维的条目,函数格式如下:

numpy.squeeze(arr, axis)

参数说明:

arr:输入数组
axis:整数或整数元组,用于选择形状中一维条目的子集
实例
import numpy as np

x = np.arange(9).reshape(1,3,3)

print ('数组 x:')
print (x)
print ('\n')
y = np.squeeze(x)

print ('数组 y:')
print (y)
print ('\n')

print ('数组 x 和 y 的形状:')
print (x.shape, y.shape)

输出结果为:

数组 x:
[[[0 1 2]
[3 4 5]
[6 7 8]]]

数组 y:
[[0 1 2]
[3 4 5]
[6 7 8]]

数组 x 和 y 的形状:
(1, 3, 3) (3, 3)

目录
相关文章
|
1天前
|
计算机视觉 Python
PIL图像转换为Numpy数组:技术与案例详解
本文介绍了如何将PIL图像转换为Numpy数组,以便利用Numpy进行数学运算和向量化操作。首先简要介绍了PIL和Numpy的基本功能,然后详细说明了转换过程,包括导入库、打开图像文件、使用`np.array()`或`np.asarray()`函数进行转换,并通过打印数组形状验证转换结果。最后,通过裁剪、旋转和缩放等案例展示了转换后的应用,以及如何将Numpy数组转换回PIL图像。此外,还介绍了处理base64编码图像的完整流程。
13 4
|
2月前
|
机器学习/深度学习 并行计算 大数据
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧2
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
93 10
|
2月前
|
Python
Numpy学习笔记(四):如何将数组升维、降维和去重
本文介绍了如何使用NumPy库对数组进行升维、降维和去重操作。
53 1
|
2月前
|
Python
Numpy学习笔记(五):np.concatenate函数和np.append函数用于数组拼接
NumPy库中的`np.concatenate`和`np.append`函数,它们分别用于沿指定轴拼接多个数组以及在指定轴上追加数组元素。
45 0
Numpy学习笔记(五):np.concatenate函数和np.append函数用于数组拼接
|
2月前
|
Python
使用 NumPy 进行数组操作的示例
使用 NumPy 进行数组操作的示例
39 2
|
2月前
|
索引 Python
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧1
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
115 4
|
2月前
|
机器学习/深度学习 并行计算 调度
CuPy:将 NumPy 数组调度到 GPU 上运行
CuPy:将 NumPy 数组调度到 GPU 上运行
110 1
|
3月前
|
Python
numpy | 插入不定长字符数组测试OK
本文介绍了如何在numpy中创建和操作不定长字符数组,包括插入和截断操作的测试。
|
3月前
|
API Python
Numpy 数组的一些集合操作
Numpy 数组的一些集合操作
42 0
|
3月前
|
编译器 Linux API
基于类型化 memoryview 让 Numpy 数组和 C 数组共享内存
基于类型化 memoryview 让 Numpy 数组和 C 数组共享内存
43 0