学习Python在科学计算和数据分析方面的知识,主要包括NumPy、SciPy、Matplotlib和Pandas等库。 NumPy是Python科学计算的基础库,它提供:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/42769.html
- 强大的N维数组对象ndarray,是大部分功能的核心
- 函数库,实现线性代数、随机数生成、傅里叶变换等
- 用于集成C/C++和Fortran代码的接口
NumPy数组具有以下主要特征:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/42769.html
- 同型:数组元素必须是同一类型,可以是数值型或字符串型
- 定型:数组创建后类型不可变
- 轻量级:对数组元素的操作不会引入额外开销
- 维度灵活:数组可以是0D(标量)到多维的
- 连续存储:数组元素在内存中是连续存储的,这有利于CPU高效访问元素。 我们可以通过
numpy.array
函数创建数组:
python
import numpy as np
a = np.array([1, 2, 3]) # 一维数组
b = np.array([[1, 2], [3, 4]]) # 二维数组
c = np.array([1, 2, 3], dtype=np.float64) # 指定dtype
d = np.array([[1, 2], [3, 4]], dtype=np.int32)
e = np.zeros((2, 3)) # 创建全0数组
f = np.ones((3, 2)) # 创建全1数组
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/42769.html
可以对数组进行索引、切片、加/乘法运算等:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/42769.html
python
a[0] # 1
b[1, 1] # 4
a[1:] # [2 3]
b[:, 1] # [2 4]
a + a # [2 4 6]
a * 10 # [10 20 30]
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/42769.html
使用NumPy可以实现线性代数运算,如矩阵乘法:文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/42769.html
python
a = np.array([[1,2,3], [4,5,6]])
b = np.array([[1,2], [3,4], [5,6]])
np.matmul(a, b)
# array([[22, 28],
[49, 64]])
文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/42769.html
NumPy是科学计算的基础,我们会在后续教程中继续学习NumPy的其他知识和用法。通过这个简单入门,您已经可以实现数组的创建,操作和线性代数了。如果您有任何疑问,请在评论区提出,我们共同学习成长!文章源自菜鸟学院-https://www.cainiaoxueyuan.com/ymba/42769.html