机器学习-Numpy
如果一个人拒绝提高自己的思想觉悟,那么他只能处在弱小、可怜、凄惨的境地。
目录
机器学习-Numpy
1.Numpy:生成矩阵 做矩阵运算
1)创建矩阵
①使用列表创建
②使用元组创建
2)矩阵取值
3)numpy.arange 方法
4)矩阵的运算
5)数组的内部计算
①二维数组
②三维数组
6)数组合并
7)数组转置
机器学习:
所谓的机器学习 就是根据以前的数据 画图象 画出一个数学模型 用这个数学模型来表达 通过这个图象来对我们的数据进行分类 预测
我们创建一个工程jtxy_ml
1.Numpy:生成矩阵 做矩阵运算
1)创建矩阵
①使用列表创建
②使用元组创建
# 导入numpy 并起别名np
import numpy as np# numpy用来做矩阵运算
rect1=np.array([[1,2,3],[5,7,8]])
print(rect1)
# 向量
rect2=np.array([1,2,3])
print(rect2)# 矩阵
# 元组:是一个不可更改的数组
a=(2,3,4)
print(a[0],a[1],a[2])a=((2,3,4),(7,5,6))
print(a[0],a[1])
# a[0,0]=1 不支持修改 TypeError: 'tuple' object does not support item assignment
rect3=np.array((a))
print(rect3)
2)矩阵取值
# 导入numpy 并起别名np
import numpy as npr=np.array([[2,3,4],[6,7,8]])
# :所有行 1第二列
a=r[:,1]
print(a)
# 取第一行所有数据
b=r[0]
print(b)
# 取8
c=r[1,2]
print(c)
我们会发现 在生成矩阵时 我们需要自己输入数字 有时候会显得非常麻烦 此时
3)numpy.arange 方法
import numpy as np
array1=np.arange(10,16,step=1)print(array1)
# 我们有了数据以后 怎么生成矩阵呢
r=array1.reshape(2,3)
print(r)# 生成等差数列
a=np.linspace(10,20,10)
print(a)
# 转化为矩阵
print(a.reshape(5,2))
import numpy as np# 生成0矩阵
z=np.zeros((5,5))
print(z)
# 生成单位矩阵
z1=np.eye(3)
print(z1)
# 生成1矩阵
o=np.ones((5,5))
print(o)
4)矩阵的运算
import numpy as npa=np.arange(10,15)
print(a)
b=np.array([1,2,3,4,5])
# 矩阵的减法
c=a-b
print(c)a1=np.ones((2,3),dtype=int)
a2=np.random.random((2,3))
# 矩阵的乘法
a1*=3
print(a1)c=a1+a2
print(c)
d=a1*a2
print(d)
5)数组的内部计算
①二维数组
import numpy as np
a=np.linspace(1,15,15).reshape((3,5))
print(a)s=a.sum()
print(s)
print("----分割线----")
# 二维数组 我们可以指定维度计算和
a1=a.sum(axis=0)
print("0维度按照列做计算",a1)
print("----分割线----")
a2=a.sum(axis=1)
print("1维度按照行做计算",a2)
②三维数组
import numpy as npc=np.array([[[0,1,2,3],[4,5,6,7]],[[1,2,3,4],[5,6,7,8]]])
# 各元素第一维度对应相加
c1=c.sum(axis=0)
print(c1)
print("----分割线----")
# 各元素第二维度对应相加
c2=c.sum(axis=1)
print(c2)
print("----分割线----")
# 各元素第三维度对应相加
c3=c.sum(axis=2)
print(c3)
6)数组合并
import numpy as npa=np.ones((2,2))
print(a)
b=np.eye(2)
print(b)
print("----垂直合并----")
res1=np.vstack((a,b))
print(res1)
print("----水平合并----")
res2=np.hstack((a,b))
print(res2)
7)数组转置
import numpy as npa=np.array([[1,0],[2,3]])
print(a)
print("----转置----")
print(a.T)