人工智能入门(笔记)(numpy、matplot的用法)

人工智能入门训练营(第十一期)笔记

主要内容:

  1. numpy的用法

  2. matplot的用法

一、numpy的用法

    1.导入numpy
    
    import numpy as np

    2.生成一个一位数组

    np.array([1,2,3])

    np.array(([1,2,3],[4,5,6]))

    arr = np.array([1,2,3])
    arr                            #输出结果  array([1,2,3])
    
    arr = np.array((1,2,3))
    arr                            #输出结果  array([1,2,3])

    3.np.arange()生成数组

    arr = np.arange(0,10)          #0到9,不包括10

    arr = np.arange(0,10,2)        #步长是2,[0,2,4,6,8]

    arr = np.arange(0,10,0.1)      #步长是0.1,包含0-9.9

    arr.reshape(2,50)              #变成二维的,二行五十列
    
    arr.reshape(25,4)              #二十五行,四列   注:()内为相乘为100

    4.np.zeros(),np.ones()

    np.zeros((3,3))                #形成3*3都为0的矩阵

    np.ones((4,3))                 #形成4*3都为1的矩阵


    5.np.random.randint()
    
    np.random.randint(0,10)        #随机生成一个0-10的数(整数)

    np.random.randint(0,10,10)     #随机生成十个0-10的数

    np.random.randint(0,10,(5,2))  #随机生成十个0-10的数,并形成5*2的矩阵(五行两列)

    6.np.linspace()
    
    a = np.linspace(0,10)          #生成一个0-10的等差数列,默认值是50

    b = np.linspace(0,10,100)      #等差数列,100

    7.矩阵运算

    w = np.arange(0,10).reshape(2,5)        #两行五列的矩阵
    
    x = np.arange(0,10).reshape(5,2)        #五行两列的矩阵

    z = np.dot(w,x)                         #w*x   z是2*2矩阵

    z = np.matmul(w,x)                      #在二维矩阵matmul和dot运算结果一样,维度变高结果不一样

    
    a = np.arange(1,5).reshape(2,2)         #2*2

    b = np.arange(1,5).reshape(2,2)        

    a + b = 对位相加
    
    a — b = 对位相减

    a * b = 对位相乘
    
    a / b = 都是1(这里都是一,是因为a和b的值是一样的)
    
    注意:行列必须一样


    8.numpy 的切片操作
    
    arr = np.random.randint(0,10,(5,2))    #5行2列的二维数组

    arr [:1,:]                             #第一个冒号是第一维,第一行,第二个冒号是列

    arr [:,:1]                             #第一列

    arr [1:3,:]                            #第二行,第三行


    9.numpy的常用计算函数

    arr = np.arange(0,10)                  #0-10的数组

    
    arr.max()    #取数组里面最大的

    arr.min()    #取数组里面最小的
    
    arr.mean()   #取均值
    
    arr.argmin() #取最小值的位置(索引)

    arr.argmax() #取最大值的位置
    
    arr.std()    #取标准差

    arr.var()    #取方差

二、matplot常用方法

    
    1.打开jupyter notebook,新建页面

    2.导入库

    import numpy as np

    import matplotlib.pyplot as plt

    from mpl_toolkits.mplot3d import Axes3D

    3.画出y = x**2的函数图像

    x = np.arange(-10,10,0.1)                #-10到10,步长为0.1

    y = x**2 or y =np.square(x)

    plt.plot(x,y,'r-')                       #抛物线的图像 r-红色的线,可以用 b- 蓝色 -是实线 --是虚线
    plt.xlabel('x')

    plt.ylabel('y')

    plt.xlim(-10,10)                        #给x设置取值范围

    plt.ylim(0,100)                         #给y设置取值范围   

        
    4.画出 y = sin(x)的函数图像

    pi=3.14                        #定义pi

    x = np.arange(0,2*pi,0.01)       #生成x的值

    y = np.sin(x)

    x.shape,y.shape              #x,y的值

    plt.plot(x,y,'r-')                       

    plt.xlim(0,2*pi)

    plt.ylabel(-1,1)

    plt.title('y = sin(x)')    #给表一个title头
    
    plt.plot(x,y=0)            #把y=0的也画出来



    5.画出y = np.square(x) + np.square(y)的图像
    
    import numpy as np
 
    import matplotlib.pyplot as plt


    from mpl_toolkits.mplot3d import Axes3D

    x = np.arange(-5,5,0.1)

    y = np.arange(-5,5,0.1)

    x,y = np.meshgrid(x,y)

    z = -(x**2 +y**2)

    fig = plt.figure()        #生成一个画布

    axes =Axes3D(fig)         #生成一个三维坐标系,传入画布

    axes = plt.axes(projection="3d")

    axes.plot_surface(x,y,z,cmap='rainbow')    #cmap图像显示模式

    axes.view_init(50)        #站在离水平面50来看图像

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/adminkeys/article/details/107905454

猜你喜欢

转载自blog.csdn.net/adminkeys/article/details/107905454