#创建多维数组 import numpy as np m = np.array([np.arange(2), np.arange(2)]) m
#数组的切片和索引 a = np.arange(9) a a[3:7] a[:7:2]
#改变数组的维度 #ravel函数可以完成展平操作 b = np.arange(24).reshape(2,3,4) b a = b.ravel() a a.shape = (4,6) a
#数组的组合,np.hstack水平组合,np.vstack垂直组合 a = np.arange(9).reshape(3,3) a b = 2*a b
#数组水平组合 np.hstack((a,b)) #数组垂直组合 np.vstack((a,b))
#常用的函数 #创建矩阵 a = np.mat('1 2 3, 4 5 6, 7 8 9') print(a) #逆矩阵 a.I A = np.mat(np.arange(9).reshape(3,3)) A A = np.eye(2) A C = np.bmat('A B; A B') C
#计算 a = np.arange(9) #a数组里面每个元素相加的结果 np.add.reduce(a) #数组相除 a = np.arange(-4,4) a%2 #矩阵的行列式 A = np.mat('3 4;5 6') A B = np.linalg.det(A) B
#argmax函数返回数组中最大值对应的下标 #argmin a = np.array([2,4,8]) np.argmax(a) np.argmin(a) #searchsorted函数为指定的插入值返回一个在有序数组中的索引位置 a = np.arange(5) a idices = np.searchsorted(a, [-2,7]) idices
#extract函数可以根据某个条件从数组中抽取元素 a = np.arange(7) a condition = (a%2) == 0 np.extract(condition, a) # 使用nonzero函数抽取数组中的非0元素 np.nonzero(a)
#matplotlib.pyplot包中包含了简单绘图功能 #使用show函数显示 #绘制一个多项式的函数 import matplotlib.pyplot as plt #创建一个多项式 func = np.poly1d(np.array([1,2,3,4]).astype(float)) print(func)
#在-10和10之间产生30个均匀分布的值 x = np.linspace(-10, 10, 30) #创建多项式的值 y = func(x) #调用plot函数 plt.plot(x,y) #使用xlabel函数添加x轴标签 plt.xlabel('x') #使用ylabel函数添加y轴标签 plt.ylabel('y(x)') plt.show()