numpy基础(2)

#创建多维数组
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()

猜你喜欢

转载自blog.csdn.net/qq_42034590/article/details/80697692
今日推荐