Numpy 模块的学习 numpy中random模块:
Numpy模块的学习:
三个网址推荐:
1 http://blog.csdn.net/yhb315279058/article/details/50226075
2 http://www.jb51.net/article/49397.htm
3 http://www.jb51.net/article/103080.htm
4 http://blog.csdn.net/tongxinzhazha/article/details/78770373
Numpy中Random模块的学习:
1 http://blog.csdn.net/pipisorry/article/details/39508417
2 http://blog.csdn.net/unin88/article/details/50570196
3 http://blog.csdn.net/qtlyx/article/details/50733176
补充:
1 Numpy 数据类型(numpy可以在数据类型的后面加上数字,标识这种类型在内存中占的位数)
bool 用一个比特存储布尔类型
inti 由平台决定其所占位数,一般为int32/64
int8/16/32/64 所占位数为8/16/32/64为的有符号整数
unit8/16/32/64 所占位数为8/16/32/64位的无符号数
float16/32/64(float) 半精度符号数/单精度符号数/双精度符号数
complex64/128(complex) 用32位浮点数表示实部和虚部/用64位表示实部和虚部
2 在Numpy中,多数函数可以指定数据类型的参数,这个参数是可选的,格式为dtype=类型名,如:
1 a=numpy.arrange(5,dtype=int) 2 3 >>>array([0,1,2,3,4]) 4 5 a=numpy.arrange(5,dtype=complex) 6 7 ?
3 Nump的数组创建函数(array,arrange,ones,zeros,eye,empty)
empty:根据指定的维数和类型创建一个数组但不填充任何值,数组元素值多是一些未初始化的垃圾值
1 import numpy as np 2 3 print(np.empty(3)) 4 5 print(np.empty((4,1)))
4 数组转置(可以使用transpose()函数,也可以使用T属性访问转置矩阵)
1 nar.transpose() 2 3 nar.T
5 Numpy中很多函数统计方法即可以当做数组的实例方法调用,也可以作为顶级的Numpy函数调用
1 a=numpy.arrange(12).reshape(3,4) 2 3 a 4 5 array([[0,1,2,3],[4,5,6,7],[8,9,10,11]])
实例方法:
1 r=a.cumsum() 2 3 r 4 5 array([0,1,3,6,10,15,21,28,36,45,55,66])
顶层函数调用:
1 r=numpy.cumsum(a) 2 r 3 4 array([0,1,3,6,10,15,21,28,36,45,55,66])
还有比如排序
a=numpy.random.rand(4)
a.sort()等价于numpy.sort(a)
6 Numpy中的集合运算
a=numpy.array([1,4,2,7,9,0,1,5,7,8])
unique(a): 删除数组中的重复元素,并返回唯一元素的有序结果
intersect1d(a,b):查找a,b中的共同元素,并返回公共元素的有效结果
union1d(a,b):求a,b的并集,并返回有序结果。
in1d(a,b):返回一个布尔型数组,如果a元素包含于b,则返回TRUE,否则返回False
setdiff1d(a,b):求集合a,b的差,即存在于a中但不存在于b中的元素
setxor1d(a,b):求集合a,b的对称差。即存在于a或b但不同时存在于a,b中的元素
7 线性代数
numpy中的linalg模块支持常见的线性代数操作
det :求矩阵行列式
eig:求矩阵特征值和特征向量
inv:求方阵的逆
numpy中的常用线性代数函数
dot:完成矩阵乘法
trace:计算对角线元素的和
8访问文件
(1)将数组以二进制形式存取
save用于保存:numpy.save('d:\\nshz.npy',a) 若没有指定扩展名,则默认为.npy
load用于读取:numpy.load('d:\\nshz.npy')
(2)存取文本文件
savetxt():numpy.savetxt('d:\\npshz.txt',a,delimiter=',')会在D盘下新建文件‘npshz.txt’
loadtxt():numpy.loadtxt('d:\\npshz.txt',delimiter=',')