• 面向矩阵的numpy入门笔记


      我先声明我学numpy的目的:在python中使用矩阵(我需要在机器学习中使用矩阵),所以我的目的很明确,矩阵;

      矩阵在numpy中叫ndarray(The N-dimensional array),我就是很喜欢问这个ndarray为啥叫ndarray,可是大多教程(特别是中文教程)都不说,这就不利于我们给ndarray一个形象的记忆。

    ndarray就是多维数组,叫这个是为了与python里的数组区分开来。

      之后我们把目的细分,具体到这个库对应的函数(以下代码都省略了 import numpy as np 哦):

    1.生成

      向量:生成向量用linspace (线性空间)

    a = np.linspace( 1, 10 , 5 , endpoint = True)
    /*
    参数说明 第一个1 是起始数,10是末尾数,5是生成向量(数组)的长度,最后一个是生成数组是否包含末尾数的选择,默认为True(即包含10) 
    */

    b = np.arange(n)
    //生成从0 到n-1的数组


    c = np.concatenate( a,b)
    //把两个数组连起来 concatenate就是一个单词,表示链接起来

      普通矩阵

    a = np.array(list/tuple , dtype = np.float32)
    //用array函数最直接,第一个参数为矩阵内容,如 a = np.array([ [1,2] , [3,4] ] ) //矩阵内容为包含行列表的列表,行之间用 逗号 分隔, btw,[] 用()代替也是可以的 //打印a print( a ) // [[1 2] // [3 4]]

      特殊矩阵

    //一下shape 都是元祖哦, 直白说, 就是类似  ( (行数 , 列数) )的写法
    np.ones(shape)
    np.zeros(shape)
    //元素全为一或全为零的矩阵
    np.full(shape,val)
    //生成一个每个元素都是val的矩阵 full有全部的意思,所以就是 全部都为val
    np.eye(n)
    //生成一个对角线为1,其余为零的方阵 (n维单位矩阵)eye,网上说是因为其与数学上单位矩阵的字母I读音一样。

      like  一族

    a = np.ones_like(b)
    //生成shape和b一样的全为 1 的矩阵
    
    b = np.zeros_like(a)
    //这个你猜一下把。

      修改矩阵

    .reshape(tuple)
    //改变原来的矩阵的shape,但是要使生成矩阵与原元素相同
    // a = np.arrange(30).reshape( ( 2,3,5 ) ) 比如这样用
    // 这儿有个注意的地方,如果参数的元组元素里面有-1,说明其大小可以由其他元祖元素推出来,不用程序员给出。
    // 例如一个 长100 的向量 a ,想把它改成 20*5则
    a.reshape((20,-1))
    .resize( tuple )
    //这个和reshape一样用,不过会改变原数组哦,也就是reshape用完,原数组还是原来的配方,但是用过resize之后,某老吉就变成某多宝了~ .swapaxes( ax1 , ax2) //学过线代的都觉得这个熟悉吧, ,没错这就是转置,transpose

    2.矩阵信息查询

    //以下函数都是 ndaray对象的成员 直白就是 声明了一个矩阵a, 要使用就得 a.value()
    
    a.ndim
    //就是矩阵的维度,一般是2嘛
    
    a.shape
    //n 行 m 列
    
    a.size
    // 矩阵中有几个元素,相当于  n*m
    
    a.dtype
    //矩阵中元素的类型

    3.矩阵运算

      numpy有一个奇怪的运算叫元素运算,就是A*B代表矩阵A和矩阵B每个元素相乘,,那么我的运算在哪里呢?

      矩阵与矩阵运算

    np.dot( A , B) 
    //矩阵乘法
    
    A**-1
    //矩阵的逆
  • 相关阅读:
    书面采访时表示,小东西(数据库知识)
    UBuntu经常使用的操作(网络资源)
    hdu 5030 Rabbit's String(后缀数组&二分法)
    Chapter 2 User Authentication, Authorization, and Security(4):限制SA帐户管理权限
    编程算法
    iOS:WebKit内核框架的应用与解析
    协议森林03 IP接力赛 (IP, ARP, RIP和BGP协议)
    以太网,IP,TCP,UDP数据包分析
    tcp 面向连接
    TCP传输层协议的流程
  • 原文地址:https://www.cnblogs.com/foxblogs/p/7569244.html
Copyright © 2020-2023  润新知