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
图片
NumPy 综述:多维数组操作与数据分析指南