NumPy
科学计算的Python利器

从ndarray到线性代数,从图像处理到信号分析,NumPy开启高效数值计算新纪元

高性能计算
向量化操作
广播机制
50×
性能提升

NumPy vs Python List

Performance Comparison

ndarray对象

N维数组的核心

数组创建

import numpy as np # 从列表创建 arr = np.array([1, 2, 3, 4]) # 创建零数组 zeros = np.zeros((3, 4)) # 创建范围数组 range_arr = np.arange(0, 10, 2)
1-D
向量
N-D
张量

广播机制

智能形状匹配

广播规则示例

# 数组形状自动匹配 a = np.array([[1, 2, 3], [4, 5, 6]]) # (2, 3) b = np.array([10, 20, 30]) # (3,) result = a + b # 广播后 (2, 3)

广播优势

无内存复制
Memory Efficient
向量化操作
Vectorized

通用函数

ufuncs

逐元素操作
Element-wise
广播支持
Broadcasting
类型转换
Type Casting

线性代数运算

矩阵操作与特征值分解

@
矩阵乘法
Matrix Multiply
λ
特征值
Eigenvalues
A⁻¹
矩阵求逆
Matrix Inverse

图像处理

灰度化与滤波

# RGB转灰度 gray = 0.299*R + 0.587*G + 0.114*B # 图像滤波 filtered = np.convolve2d(image, kernel)
RGB
彩色图像
Gray
灰度图像

信号处理

傅里叶变换

# 快速傅里叶变换 freq_domain = np.fft.fft(signal) # 逆变换 time_domain = np.fft.ifft(freq_domain)
时域
Time Domain
频域
Frequency Domain

性能对比与实际应用

数据驱动的科学计算优势展示

执行时间对比

内存使用效率

金融分析

股票价格序列分析,风险评估模型

科学研究

传感器数据处理,物理模拟计算

机器学习

特征工程,模型训练优化