Numpy 的英文全称为 Numerical Python,指Python 面向数值计算的第三方库。Numpy 的特点在于,针对 Python 内建的数组类型做了扩充,支持更高维度的数组和矩阵运算,以及更丰富的数学函数。Numpy 是 Scipy.org 中最重要的库之一,它同时也被 Pandas,Matplotlib 等我们熟知的第三方库作为核心计算库。
NumPy(Numeric Python)提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,以及精密的运算库。专为进行严格的数字处理而产生。多为很多大型金融公司使用,以及核心的科学计算组织如:Lawrence Livermore,NASA用其处理一些本来使用C++,Fortran或Matlab等所做的任务。
Numpy包括了:1、一个强大的N维数组对象Array;2、比较成熟的(广播)函数库;3、用于整合C/C++和Fortran代码的工具包;4、实用的线性代数、傅里叶变换和随机数生成函数。Numpy和稀疏矩阵运算包scipy配合使用更加方便。
import numpy as np
a = np.ones(5, int)
b = np.zeros(5, int)
f = np.random.randint(0, 10, 6)
print("全1数组:\n", a)
print("全0数组:\n", b)
print("随机数数组:\n", f)
import numpy as np
a = np.ones(5, int)
print("全1数组维度:\n", a.ndim)
print("全1数组元素个数:\n", a.shape)
import numpy as np
c = np.arange(9).reshape(3, 3)
print("转置前:\n", c)
d = c.T
print("转置后:\n", d)
e = np.arange(10)
print("数组为:\n", e)
print("最后一个元素为:\n", e[-1])
print("第2到第4元素为:\n", e[1:4])
print("逆序数组为:\n", e[::-1])
import numpy as np
c = np.arange(-9, 0).reshape(3, 3)
d = np.arange(0, 9).reshape(3, 3)
print("第一个数组为:\n", c)
print("第二个数组为:\n", d)
print("水平合并:\n", np.hstack((c, d)))
print("垂直合并:\n", np.hstack((c, d)))
print("深度合并:\n", np.hstack((c, d)))
import numpy as np
c = np.arange(-9, 0).reshape(3, 3)
print("数组为:\n", c)
print("水平拆分为:\n", np.hsplit(c, 3))
print("垂直拆分为:\n", np.vsplit(c, 3))
d = np.arange(8).reshape(2, 2, 2)
print("待深度拆分数组为:\n", d)
print("深度拆分为:\n", np.dsplit(d, 2))
import numpy as np
a = np.arange(4)
b = np.arange(4, 8)
print("两个数组分别为:\n", a, b)
print("a+2为:\n", a + 2)
print("a+b为:\n", a+b)
print("a-b为:\n", a-b)
print("a*b为:\n", a*b)
print("a/b为:\n", a/b)
import numpy as np
a = np.arange(7)
print("数组为:", a)
print("数组所有元素的和为:", a.sum())
print("数组所有元素的积为:", a.prod())
print("数组所有元素的平均值为:", a.mean())
print("数组所有元素的最大值为:", a.max())
print("数组所有元素的最小值为:", a.min())
print("数组所有元素的元素小于3的元素替换为3,大于4的元素替换为4:", a.clip(2, 5))
print("数组所有元素的方差为:", a.var())
print("数组所有元素的标准差为:", a.std())
学习到了numpy库中的一些函数的使用方法。受益良多,感觉到python库的强大之处,日后一定多加练习,以求对python的常用库的使用更加熟练。