【AI】numpy_pandas_matplotlib_sklearn合集
每日更新,建议关注、点赞、收藏。
友情链接:
人工智能数学_线代微积分概率论最优化
numpy_pandas_matplotlib_sklearn
numpy使用 {链接1} {链接2} {链接3}
SciPy使用
Matplotlib使用 {链接1} {链接2}
建议路线:机器学习->深度学习->强化学习
目录
- Numpy
Numpy
- numpy高效
python的for循环低效,每遍历到一个元素,就要判断其类型,并查找适用于该数据类型的正确函数
numpy高效的原因:
- 由C语言编写
- 连续单一类型存储VS分散多变类型存储
1)Numpy数组内的数据类型必须是统一的,如全部是浮点型,而Python列表支持任意类型数据的填充
2)Numpy数组内的数据连续存储在内存中,而Python列表的数据分散在内存中 - 多线程VS线程锁
Python语言执行时有线程锁,无法实现真正的多线程并行,而C语言可以
- 什么时候用numpy
在数据处理的过程中,遇到使用“Python for循环” 实现一些向量化、矩阵化操作的时候
#%timeit :ipython中统计运行时间的魔术方法(多次运行取平均值)
def compute_reciprocals(values):
res = []
for value in values: # 每遍历到一个元素,就要判断其类型,并查找适用于该数据类型的正确函数
res.append(1/value)
return res
values = list(range(1, 1000000))
%timeit compute_reciprocals(values)
################对比numpy
import numpy as np
values = np.arange(1, 1000000)
%timeit 1/values
#实现相同计算,Numpy的运行速度是Python循环的25倍