NumPy 综述:多维数组操作与数据分析指南
该思维导图概述了NumPy的核心概念,包括多维数组对象(ndarray)的基本属性和内存布局。列出了数组创建与初始化的方法,涵盖基础创建、特殊矩阵及随机数生成。还介绍了数组操作技术,如索引、切片、形状操作和拼接。数组运算部分讲解了广播机制和逐元素运算。此外,涵盖了数据统计与分析、文件读/写方法,以及线性代数相关功能,如矩阵分解和线性方程组求解。
源码
# NumPy 综述
## 1. 核心概念
- 多维数组对象(ndarray)
- 数据结构
- 示例:arr = np.array(1, 2, 3, 4)
- 数据类型(dtype)
- int32
- float64
- bool
- 数组属性
- .shape
- .ndim
- .size
- .dtype
- 内存布局
- 视图(View)与副本(Copy)
- 存储顺序
- C风格(行优先)
- Fortran风格(列优先)
## 2. 数组创建与初始化
- 基础创建方法
- np.array
- np.zeros
- np.ones
- np.empty
- np.arange
- np.linspace
- np.logspace
- 特殊矩阵
- np.eye
- np.diag
- np.identity
- 随机数生成
- 均匀分布
- np.random.rand(2, 2)
- 整数随机
- np.random.randint(0, 10, (3, 3))
- 正态分布
- np.random.normal(0, 1, 5)
- 排列
- np.random.permutation(1, 2, 3, 4)
## 3. 数组操作
- 索引与切片
- 基本索引
- 布尔索引
- 花式索引
- 形状操作
- reshape
- flatten
- transpose
- resize
- swapaxes
- 拼接与分割
- 拼接
- np.concatenate
- np.stack
- np.hstack
- np.vstack
- 分割
- np.split
- np.hsplit
- np.vsplit
## 4. 数组运算
- 广播机制
- 规则
- 形状对齐
- 自动扩展维度
- 逐元素运算
- 加法:+
- 减法:-
- 乘法:*
- 除法:/
- 幂运算:**
- 矩阵乘法
- np.dot
- @ 运算符
## 5. 数据统计与分析
- 排序函数
- np.sort
- np.argsort
- np.lexsort
- 去重与统计
- np.unique
- np.histogram
- 分箱操作(数据离散化)
- 描述性统计
- np.mean
- np.median
- np.std
## 6. 文件读/写
- 文本文件
- 读取
- np.loadtxt('data.txt', delimiter=',')
- 保存
- np.savetxt('output.txt', arr, fmt='%.2f')
- 二进制文件
- np.save
- np.load
- CSV文件
- np.genfromtxt('data.csv', delimiter=',')
## 7. 线性代数
- 矩阵分解
- 特征值与特征向量
- 奇异值分解(SVD)
- QR分解
- 线性方程组求解
- np.linalg.solve
- 行列式与矩阵秩
- 范数计算
- np.linalg.norm
图片
