Numpy用python实现的科学计算,
包括:1、一个强大的N维数组对象Array;2、比较成熟的函数库;3、用于整合C/C++和Fortran代码的工具包;4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便。
1、import Numpy as np
2、ar=np.array([2,3,4]) #生成一般数组
3、ar=np.array([[1,2,3],[2,3,4]])#生成多维数组
4、ar=np.arange(start,stop,step)#生成指定范围的数组
5、ar=np.arange(1,15,3)#生成指定范围的数组
6、ar=np.arange(1,15)#生成步长为1的数组
7、ar=np.zeros(3)#生成长度为3的0数组
8、ar=np.zeros((3,3))#生成3行3列的0数组
9、ar=np.ones(3)#生成长度为3的1数组
10、ar=np.ones((3,3))
11、ar=np.eye(3)#生成对角线为1的3行3列数组
12、ar=np.random.rand()#生成(0,1)之间的随机数组
13、ar=np.random.rand(2,3)
14、ar=np.random.randn()#生成满足正态分布的数组
15、ar=np.random.randint()方法与np.arange()类似生成一定范围的随机数组
16、ar=np.random.randint(low,high,size)
17、ar=np.random.randint(1,5,10)#在区间(1,5)生成长度为10的随机数组
18、ar=np.random.randint(5,size=10)#在区间(0,5)生成长度为10的随机数组
19、ar=np.random.randint(5,size=(10,3))#在区间(1,5)生成长度为10行3列的随机多维数组
20、ar=np.random.choice(5,3)#选取(0,5)随机3个数组
21、ar=np.random.choice(5,(2,3))
22、ar=np.random.shuffle(ar)#随机打乱数组顺序
23、ar.shape#返回数组有几行几列
24、ar.size#返回几个元素
25、ar.dtype#返回数组类型
26、ar.ndim#返回数组的维数
27、ar[2:5]#获取ar数组的第3到5的值
28、ar[3:-2]#其实和正常list列表的操作一样
29、ar[ar>3]#获取数值中大于3的数值
30、ar=np.array([[1,2,3],[2,3,4],[6,8,9]])
31、ar[1]#返回[1,2,3]
32、ar[1:3]#返回第二行和第三行的数据
33、ar[:2]#返回第三行之前的数据
34、ar[:,2]#返回第三列之前的数据,逗号之前是一个冒号,表示获取所有行
35、ar[:,0:2]#获取位置区间
36、ar[:,:2]#获取位置区间
37、ar[2:3,0:2]#获取位置区间
38、arr_float=arr.astype(np.float64)#将ar的类型转换为float类型
39、arr_float=arr.astype(np.string_)#将ar的类型转换为string类型,注意有’_’
40、ar=np.isnan(ar)#可判断哪个元素为缺失值
41、ar[np.isnan(ar)]=0#确实值填充为0
42、np.unique(ar)#对数值去重
43、ar.reshape(2,4)#将数组重塑为2行4列
44、ar.T#数组转置,行列互转
45、np.concatenate([ar1,ar2],axis=1)#axis=1表示对数组进行横向合并
46、np.concatenate([ar1,ar2],axis=0)#axis=0表示对数组进行纵向合并
47、np.hstack((ar1,ar2))#两个待合并的数组以元组形式传给hstack,不需要设置axis,横向合并
48、np.column_stack((ar1,ar2))#column_stack与hstack类似
49、np.vstack((ar1,ar2))#类似hstack进行纵向合并
50、np.row_stack((ar1,ar2))#与vstack类似
51、np.square(ar)#取元素平方
52、np.sqrt(ar)#取元素平方根
53、np.abs(ar)#取绝对值
54、ar=np.array([[1,2,3],[2,3,4],[6,8,9]])
55、ar.sum()#求和
56、ar.sum(axis=1)#每行求和
57、ar.sum(axis=0)#每列求和
58、ar.mean()#求平均值
59、ar.mean(axis=1)#求行的平均值
60、ar.max(axis=1)#求行的最大值
61、ar.where(ar>3,’大’,’小’)#条件判断
62、np.in1d(ar1,ar2)#判断ar1中包含ar2的哪些值,注意1d其中1是数值
63、np.intersect1d(ar1,ar2)#取交集
64、np.union1d(ar1,ar2)#取并集
65、np.setdiff1d(ar1,ar2)#取差集