本教程面向初学者的Numpy简明教程,学好Numpy才能在深度学习、机器学习、AI等领域进军,如果感觉此文不错,欢迎和博主交流探讨
文章目录
1、Numpy介绍
Numeric Python 数字的Python
NumPy系统是Python的一种开源的数值计算扩展
- 一个强大的N维数组对象ndarray
- 拥有比较成熟的函数库
- 用于整合C/C++和Fortran代码的工具包
- 可以实现线性代数、傅里叶变换和随机数生成函数
- Numpy和稀疏矩阵运算包Scipy配合使用更加强大
Numpy主要用于数组的计算,主要应用于机器学习和深度学习领域,所有我们就有必要了解AI的本质是什么
现在的AI模型本质上是在进行数学运算
数学运算中主要是在做矩阵运算
在计算机中,最擅长做计算
矩阵的计算比较快,我们可以通过一定的方法,把生活中的事物,抽象成矩阵
Numpy中提供了一种数据类型:ndarray数组,nd—>n dimension n个维度
当然,在Python中,列表也是可以表示多维数组
但是,Python中列表存在缺陷:
-
查询速度慢
-
占用空间大
# 导入numpy库,并查看numpy版本
# 为什么需要关注版本信息? 因为有些情况下,版本会出现不兼容情况
import numpy as np
print(np.__version__)
# __sizeof__是Python提供的魔术方法,可以查看对象的占用内存
lst1 = [i for i in range(10000)]
print(lst1.__sizeof__())
nd1 = np.array([i for i in range(10000)])
print(nd1.__sizeof__())
单下划线开头:一般用于类内的私有属性或方法
双下划线开头:一般为Python内置的属性,不推荐你自己的代码使用双下划线开头
双下划线开头和单下划线结尾:Python内置的魔术方法或属性
2、创建ndarray数组
在创建ndarray数组之前,需要先导入Numpy这个包
import numpy as np
print(np.__version__) # 查看版本信息
创建ndarray数组可以使用:
- 列表
- routines函数 常规函数
2.1、np.array
# 导入numpy库,并查看numpy版本
# 为什么需要关注版本信息? 因为有些情况下,版本会出现不兼容情况
import numpy as np
print(np.__version__)
# 参数为一个列表
nd1 = np.array([1, 2, 3])
print(nd1, type(nd1))
# 将ndarray转换为list
lst1 = nd1.tolist()
print(lst1,