1.1NumPy是什么?
NumPy是一个开源的Python科学计算库,NumericalPython简写。1.2NumPy有什么功能?
NumPy主要的功能之一用来操作数组和矩阵。NumPy是科学计算、深度学习等高端领域的必备工具。
使用Tensor Flow、Caffe框架训练神经网络模型时,需要进行大量矩阵、数组等复杂的运算,可以直接使用NumPy里面的API.
NumPy还包含了很多常用的数学函数,覆盖了很多的数学领域,比如线性代数、傅里叶变换、随机数生成等。
Python+NumPy==Matlab
1.3为什么要使用NumPy?
(1)NumPy提供了很多高端的函数,可以对数组和矩阵进行复杂运算,比直接使用Python编码更高效;(2)NumPy有超过10年历史,核心算法经过了长时间和多人验证,非常稳定;
(3)NumPy的核心算法都是由C语言编写,执行效率更高;
(4)NumPy扩展性非常好,很容易集成到其他语言中(Java, C#,JavaScript);
(5)NumPy是开源的,免费,由广泛的社区支持。
1.4NumPy开发环境
Anaconda:包含NumPyEclips+pydev
Pycharm:
NumPy官网: http://www.numpy.org/
源码可以从git获取:
git clone git://github.com/numpy/numpy.git numpy
python setup.py build
sudo python setup.py install --prefix=/usr/local
还是建议安装Anaconda包,其中包含多个常用python工具包;
Anaconda官网:https://www.anaconda.com/download/
官网有时比较慢,国内清华镜像:https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
1.5 NumPy hello world
用arange()创建一个一维数组:
from numpy import arange
def sum(n):
a=arange(n)**2 #数组每个元素2次方
b = arange(n)*4
print("a:",a)
print("b:",b)
c=a+b
return c
print("arange(5):",arange(5))
print("sum(5):",sum(5))
输出结果:
C:\Users\Administrator\Anaconda3\python.exe F:/python/numpy/helloworld.py
arange(5): [0 1 2 3 4]
a: [ 0 1 4 9 16]
b: [ 0 4 8 12 16]
sum(5): [ 0 5 12 21 32]
Process finished with exit code 0