【Python学习笔记 】10.Numpy科学计算库(下)

4.Numpy常用函数。

    (1) reshape(a,b)

    reshape函数可以对数据进行整体变换变成a行b列。

    import numpy as np 的意思的引用numpy取别名为np来代替numpy,比较简洁。

    

    其中  ndarray.ndim

    返回维度。

    (2).np.zeros((a,b))

        初始化一个a行b列,元素全是0的矩阵。(注意里面两个括号)。若要指定数据类型。no.zeros((a,b).dtype=np.xxx)

        

        np.ones(a.b)

        初始化一个a行b列,元素全是1的矩阵。

        

    (3). .arange(a,b,c)

    构造出一组数,从a开始,到b(不包括b)结束,中间间隔c。

    若arange(a),括号里面只有一个数,则表示构造从0到a(不包括a),

    

    (4).np.linspace(a,b,c)

    构造出c个数,从a开始,b结束(包括b),每个数间隔相同。

    


    (5).np.random.random(a,b)

    生成一组随机的在-1和+1内的数,放进a行b列的矩阵。

    

    

    (6).矩阵的加减

    在对应位置进行加减,两个矩阵大小应该一致。

    

    (7). 乘法

    numpy矩阵*乘是算内积。

    a.dot(b)或者np.dot(a,b)是矩阵的乘法,一个行乘一个列,

    

   

5.矩阵常用操作

    (1).矩阵变向量 或矩阵改变行数列数

    

    解释:

        np.floor()操作是向下取整。

        a.ravel()是将矩阵拉成向量。

        a.shape=(a,b)讲向量组合成一个a行b列的组合。当其中一个元素是负一时,这个-1自动变成符合的数字。

        a. T  矩阵转置。


    (2)矩阵的拼接

        np.hstack(a,b)横着拼a,b矩阵数据。

        np.vstack(a,b)竖着拼a,b矩阵数据。

        

    (3).矩阵的分割

    np.hsplit(a,x)  横着分割矩阵,平均分成x份。

    np.vsplit(a,x)竖着分割矩阵,平均分成x份。

    

     np.hsplit(a,(x1,x2,x3.....)) 横着分割矩阵a,在x1位置分一次,x2位置分一次,.........

     np.vsplit(a,(x1,x2,x3.....)) 竖着分割矩阵a,在x1位置分一次,x2位置分一次,.........

    


6.不同复制操作对比。

    有三种复制的方法。

    (1)b=a  对b作变换的时候,a也会变。a和b变量只是名字不同,但是指向的东西是一个东西。

    

    (2).c=a.view()  浅拷贝。a,c指向的是不同的东西,但是不同的东西里面共用了一堆值。所以改变c的值,a的值也会变。

    

    (3)d=a.copy()。深复制,它们值的东西不一样,而且里面的值也不一样,复制之后便互相没有影响了。

    


7.排序和索引

    (1) .argmax(axis=0) 

         返回每一列数值最大的数的索引值。通过索引值,可以找最大的数。

          .argmax(axis=1)

        返回每一行数值最大的数的索引值。通过索引值,可以找最大的数。

        

        补充:data.shape[0]返回的是行的长度

                 data.shape[1]返回的是列的长度

    (2).  np.tile(a,(x1,x2))

        将矩阵a作扩展,行变成x1倍,列变成x2倍。    

        


    (3)  sort

        np.sort(a,axis=1)  或者 a.sort(axis=1) 对矩阵a按行进行排序

        np.sort(a,axis=0)  或者 a.sort(axis=0) 对矩阵a按列进行排序

        

        np.argsort(a)   对索引值进行从小到大排序

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值