当前位置:首页|资讯

Python中NumPy科学计算使用

作者:AI技术学院院长发布时间:2024-10-06

在数学计算方面,Python提供了NumPy来帮助我们进行科学计算,对于大型多维数组和矩阵的操作。

这篇文章将通过浅显易懂的方式来分析Numpy的使用或切片。

一、  安装Numpy

通常通过 pip 或者 conda 来安装 Numpy。

pip install numpy

打开终端输入:

等待片刻

可以加上镜像:

完成安装:


二、  导入Numpy

在 PyCharm或者在Jupyter Notebook 中,可以通过以下方式导入 Numpy:

import numpy as np

打开PyCharm新建demo01.py文件,拷贝以上代码:



三、  创建数组

使用 np.array() 创建数组。


arr = np.array([1, 2, 3])


使用特定的函数创建数组,如 np.zeros(), np.ones(), np.arange(), np.linspace(), 等。


zeros_arr = np.zeros((3, 4)) # 创建 3x4 的零矩阵

ones_arr = np.ones(5) # 创建长度为 5 的全一数组

range_arr = np.arange(0, 10, 2) # 创建从 0 到 10 的偶数数组

linspace_arr = np.linspace(0, 1, 5) # 创建 5 个等间隔点的数组


在demo01.py文件拷贝以上代码:


四、  数组操作

数组之间的算术运算。


a = np.array([1, 2, 3])

b = np.array([4, 5, 6])

print(a + b) # [5 7 9]


在demo01.py文件中拷贝以上代码:

右键运行demo01.py文件,查看结果:

数组的数学函数,如 np.sin(), np.cos(), np.exp(), np.log() 等。


c = np.array([0, np.pi/2, np.pi])

print(np.sin(c)) # [0.0 1.0 1.2246468e-16] 最后一个值接近于0


在demo01.py文件中拷贝以上代码:

右键运行demo01.py文件,查看结果:


五、  索引与切片

Numpy 数组支持类似于 Python 列表的索引和切片操作。


d = np.array([[1, 2, 3], [4, 5, 6]])

print(d[0, 1]) # 访问第一行第二列元素

print(d[:, 1:]) # 获取所有行的第一列之后的所有元素


新建demo02.py文件,添加上面的代码:


右键运行demo02.py文件,查看结果:


六、  广播机制

Numpy 支持不同形状的数组进行运算,如果两个数组在某一维度上的长度相同或者其中一个数组在该维度上长度为 1,则可以进行广播。


e = np.array([1, 2, 3])

f = np.array([[0], [4], [8]])

print(e + f) # [[1 2 3] [5 6 7] [9 10 11]]


在demo02.py文件中拷贝以上代码:

右键运行demo02.py文件查看结果:


七、  数组属性

ndim: 维度数量。

shape: 维度大小。

size: 元素总数。

dtype: 元素的数据类型。

八、  数组重塑

可以使用 reshape() 方法来改变数组的形状。


g = np.arange(8)

print(g.reshape(2, 4))


以上是 Numpy 的一些基础使用方法。根据具体需求,还可以进一步学习更多高级功能,比如线性代数操作、傅里叶变换等。

欢迎关注博主持续获取Python技术学习渠道,带你去看不一样的风景。



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1