我的毕设是做一个深度学习的项目。所以,现在正在学机器学习方面的知识。我继续跟大家分享一波。
import numpy as np
import matplotlib.pyplot as plt
#encoding = "utf-8"
#Author:Mr.Pan_学狂
#finish_time:2022/2/8 23:48
def array_Matrix():
x_array = np.array([1.0,2.0,3.0])
print(x_array)
print(type(x_array))
"""
数组的运算,
要保证数组元素数量一致
"""
y_array = np.array([2.0,4.0,6.0])
#一维数组(向量)加减法
print('\n数组加减法')
z_array = x_array + y_array
print('{} + {} ='.format(x_array,y_array),z_array)
v_array = x_array - y_array
print('{} - {} ='.format(x_array,y_array),v_array)
#一维数组(向量)乘除法
print('\n数组乘除法')
s_array = x_array * y_array
print('{} * {} ='.format(x_array,y_array),s_array)
h_array = x_array / y_array
print('{} / {} ='.format(x_array,y_array),h_array)
#一维数组(向量)与标量的运算
print('\n数组与标量的运算(广播操作)')
num = 2.0
c_array = x_array / num
print('{} / {} ='.format(x_array,num),c_array)
d_array = x_array + num
print('{} + {} ='.format(x_array,num),d_array)
#生成二维数组(矩阵)
print('\n生成二维数组(矩阵)')
Matrix = np.array([[1,2],[3,4]])
print('矩阵:',Matrix)
print('矩阵的维度:',Matrix.shape)
print('矩阵中数据的类型:',Matrix.dtype)
#矩阵的运算
print('\n矩阵的运算')
Matrix2 = np.array([[5,6],[7,8]])
Matrix3 = Matrix * Matrix2
Matrix4 = Matrix + Matrix2
print('{}\n * \n{} ='.format(Matrix,Matrix2),Matrix3)
print()
print('{}\n + \n{} ='.format(Matrix,Matrix2),Matrix4)
#矩阵与标量的运算(广播)
"""
广播操作:就是将标量x扩展成参与运算的矩阵/向量X的同样维度的矩阵/向量,
再进行运算
"""
print('\n矩阵与标量的运算(广播操作)')
Matrix5 = Matrix + num
print('{}\n + \n{} ='.format(Matrix,num),Matrix5)
print()
Matrix6 = Matrix * num
print('{}\n * \n{} ='.format(Matrix,num),Matrix6)
#访问向量/矩阵中的元素。
print('\n访问向量/矩阵中的元素')
print('输出矩阵第一行的向量',Matrix[0])#根据索引取出向量
print('输出矩阵第一行向量中的第一个元素',Matrix[0][0])#根据索引取出向量里面的元素
shape = Matrix.shape
#shape的第一个值是矩阵含有的一维向量数目,第二个值是每一行向量含有的元素数量。
#因此,矩阵元素的总数量等于shape的第一个值乘以第二个值。
print('矩阵的维度:',shape)
count = 0
print('矩阵:',Matrix)
for x in Matrix:#遍历矩阵取出向量
#x是一维向量
count += 1
for element in x:#遍历向量,取出元素
print('矩阵第{}行的元素有:'.format(count),element)
X = Matrix.flatten()#将矩阵转换为一维数组(向量)
print(X)
x = X[np.array([0,1,3])]#根据索引获取元素
print('数组元素:',x)
#根据条件取出元素
print('取出X大于2的元素',X[X>2])
def draw():
x = np.arange(0,5,0.1)#以0.1为单位生成0-5的数据
y1 = np.sin(x)#传入参数到sin函数中
y2 = np.cos(x)
plt.plot(x,y1,label="SinX")#绘图
plt.plot(x,y2,linestyle="--",label="CosX")
plt.xlabel("x")
plt.ylabel("y")
plt.title('SinX&CosX')
plt.legend()#加载全部操作
plt.show()#展示
def draw2():
from matplotlib.image import imread
img = imread('C:/Users/admin/Desktop/天道.jpg')
plt.imshow(img)#显示图片
plt.show()#展示
if __name__ == '__main__':
#pass
array_Matrix()
draw()
draw2()