python 自学笔记13 numpy数组规整

一图流操作示意。

数组塑形

升高维度

python 复制代码
import numpy as np
a = np.arange(12) # 创建一个长度为 12 的一维数组
b = np.reshape(a, (3, 4)) # 改变为 3 行 4 列的二维数组
c = np.reshape(a, (2, 3, 2)) # 改变为 2 个 3 行 2 列的三维数组

降低维度

python 复制代码
import numpy as np
a = np.array([[1, 2], [3, 4]])
b = np.reshape(a, -1) # 将二维数组展开为一维数组

改变存储顺序

python 复制代码
import numpy as np
a = np.arange(6).reshape((2, 3)) # 创建一个 2 行 3 列的二维数组
b = np.reshape(a, (3, 2), order='F') # 按列顺序存储

一维数组变成行向量和列向量

-1代表这个轴自适应填入

一维数组 → 二维数组

一维数组 → 三维数组

视图 vs 副本

视图是数据在内存中同一组数据存储,而不同的视图展示方式不同。

转置

一维数组转置

python 复制代码
# 一维数组的转置还是其本身
a_1D_array.T
# 请大家学习使用numpy.swapaxes()

二维数组

有两种转置方式

python 复制代码
a_row_vector.T					# 第一种
np.transpose(a_row_vector)		# 第二种

扁平化

例子:

python 复制代码
A_3_by_5.ravel()

旋转、翻转


堆叠

按行堆叠

沿列堆叠

其中 numpy.hstack() 函数对一维数组只能起到拼接的作用,对列向量起到堆叠的作用:

拼接

堆叠结果为三维数组



可以看成将一个立方体不同的摆放位置,但是坐标轴不变。

示例代码:

python 复制代码
A_B_1 = np.stack((A, B), axis=1)  
# dimension 1
A_B_1

重复

按元素重复

按数组重复

分块矩阵

合成

示例代码:

python 复制代码
M = np.block([[A,                np.zeros((2, 3))],
              [np.zeros((3, 2)), B               ]])

切分

相关推荐
码农阿豪4 小时前
Python 操作金仓数据库的完全指南(上篇):连接管理与高可用
开发语言·数据库·python
xian_wwq4 小时前
【学习笔记】储能系统的铁三角:BMS、PCS、EMS分别管啥
笔记·学习·储能系统
eqwaak04 小时前
4月30号(科技信息差)
python·科技·信息可视化·数据挖掘·数据分析
JaydenAI4 小时前
[MCP在LangChain中的应用-03]在Session构建的上下文中与MCP Server交互
python·langchain·ai编程·ai agent·mcp·fastmcp
中屹指纹浏览器4 小时前
指纹浏览器自动化测试中的环境一致性与稳定性保障
经验分享·笔记
初圣魔门首席弟子4 小时前
深度学习复习笔记|多层感知机 (MLP):原理 + 从零实现 + 简洁实现
人工智能·笔记·深度学习
X56614 小时前
SQL注入防御技术方案_基于正则表达式的输入清洗
jvm·数据库·python
涛声依旧-底层原理研究所4 小时前
Qwen2.5模型加载与推理实战
人工智能·python
SunnyDays10114 小时前
如何使用 Python 将 PDF 转换为 TIFF 或将 TIFF 转换为 PDF
人工智能·python·pdf
tianyuanwo4 小时前
CentOS 7 使用 CentOS 8 YUM 源报错 “Invalid version flag: if” 深度解析
python·centos·yum