一、NumPy 简介
NumPy(Numerical Python)是 Python 中用于进行科学计算的基础库之一。它提供了高效的多维数组对象 ndarray
,以及用于数组操作、线性代数、傅里叶变换、随机数等丰富的函数。
二、安装 NumPy
2.1 使用 pip 安装(推荐)
pip install numpy
2.2 使用 Anaconda 安装(科学计算推荐)
conda install numpy
2.3 验证安装
import numpy as np
print(np.__version__)
三、NumPy 基础用法
3.1 创建数组
import numpy as npa = np.array([1, 2, 3])
b = np.array([[1, 2], [3, 4]])
3.2 数组属性
print(a.shape) # (3,)
print(b.shape) # (2, 2)
print(a.dtype) # int64(或系统对应类型)
四、常用函数和操作
4.1 数组初始化
np.zeros((2, 3)) # 全 0 数组
np.ones((2, 3)) # 全 1 数组
np.eye(3) # 单位矩阵
np.arange(0, 10, 2) # 等差序列
np.linspace(0, 1, 5) # 等间隔序列
4.2 数组运算
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])print(a + b)
print(a * b)
print(np.dot(a, b)) # 点积
五、索引与切片
a = np.array([[1, 2, 3], [4, 5, 6]])print(a[0, 1]) # 访问第 0 行第 1 列
print(a[:, 1]) # 所有行的第 1 列
print(a[1, :]) # 第 1 行所有列
六、广播机制
广播允许不同形状的数组进行运算:
a = np.array([[1], [2], [3]])
b = np.array([10, 20, 30])
print(a + b)
七、常用数学函数
np.sum(a)
np.mean(a)
np.max(a)
np.min(a)
np.std(a)
八、线性代数操作
from numpy.linalg import inv, eiga = np.array([[1, 2], [3, 4]])
print(inv(a)) # 求逆矩阵
print(eig(a)) # 求特征值和特征向量
九、随机模块
np.random.rand(2, 3) # 均匀分布
np.random.randn(2, 3) # 正态分布
np.random.randint(0, 10) # 指定范围整数
np.random.seed(42) # 设置随机种子
十、常见问题
Q1: 安装报错 No module named 'numpy'
?
请确认是否在正确的 Python 环境中运行,或者重新执行 pip install numpy
。
Q2: 为什么 NumPy 运算比普通 Python 列表快?
NumPy 使用 C 语言实现底层数组结构,运算为向量化操作,性能优于 Python 原生循环。
十一、学习资源推荐
- NumPy 官方文档
- 菜鸟教程 NumPy 教程
- 廖雪峰 NumPy 教程
- 《利用 Python 进行数据分析》作者:Wes McKinney
本文由“小奇Java面试”原创发布,转载请注明出处。
可以搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。