• Numpy 用法小结


    1.  asarray 函数

    可以将输入数据转化为矩阵格式。

    输入数据可以是(列表,元组,列表的列表,元组的元组,元组的列表等这些数组形式)。

    >>> asarray([(1,2,3),(4,5,6),(7,8,9)])   ##元组的列表
    >>> asarray([[1,2,3],[4,5,6],[7,8,9]])   ##列表的列表
    >>> asarray(((1,2,3),(4,5,6),(7,8,9)))   ##元组的元组
    
    array([[1, 2, 3],                                     # 结果相同
           [4, 5, 6],
           [7, 8, 9]])

    语法:

    asarray(a,  dtype=None,  order=None)

    第一参     a      :    输入数据,一般都是可以转化为数组的格式,参考上面例子。

    第二参     dtype:   data-type, optional;  By default, the data-type is inferred from the input data.  比如float32,float64

    第三参    order:两个值, 'C'  row major or  column  'F'   fortran;

    转化为数组后,可以对数组进行大小判断:

    # 判断a中数是否大于0,如果大于0,则将该数置为1,
    
    # 1 未转换为数组,就判断与0的大小
    >>> a = [[3,2],[2,0]]  
    >>> numpy.asarray(a>0,'i') #'i'表示为dtype类型为int  
    # 出现array(1.0, dtype=float32)  
    
    >>> a = [[1,2],[1,0]]  
    >>> a = numpy.asarray(a)  #必须先转换为array
    >>> numpy.asarray(a>0,'i') 
    
    array([[1, 1],  
           [1, 0]])   

     

    2.  shape 函数

    能够读取矩阵的长度(形状)

    >>> a=[[2,3,4],[4,5,6],[3,4,5]]
    >>> from numpy import *
    
    >>> b=asarray(a)
    
    >>> b.shape
    (3L, 3L)
    >>> b[1].shape
    (3L,)

    输入可以是,整数,矩阵,也可以是矩阵的某一维(可以计算其长度)

     

    3. Numpy 保存和读取数据

    一维和二维数组(矩阵)可以用 savetxt() 保存和loadtxt() 快速保存和读取;

    savetxt("e:/python/movie_ratings/item_similarity.txt",  item_similarity_np)
    
    reloaded_matrix=loadtxt("e:/python/movie_ratings/item_similarity.txt")

    更一般的方法是save() 和load(), 此时文件名一定会被置为 .npy

    4. arange函数

    arange函数用于创建等差数组,类似range函数,经常用于for循环;

    两者的区别仅仅是arange返回的是一个数据 array,而range返回的是list

    5.  zeros, ones  

    生成0,1数组, 注意是 双括号

    >>> numpy.ones((10,10))
    array([[ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.],
           [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.],
           [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.],
           [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.],
           [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.],
           [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.],
           [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.],
           [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.],
           [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.],
           [ 1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.,  1.]])

    6. mat 把数组转换为矩阵

       numpy 的一个重要对象是 numpy.matrix。 

       包括矩阵数据的处理,矩阵的计算,以及基本的统计功能,转置,可逆性等等,包括对复数的处理,均在matrix对象中。

       具体函数列表参考:

       http://blog.csdn.net/qq403977698/article/details/47254539

    --------------------------------------------------------

    其他非numpy的函数:

    xlist=[0,1,1,2,3]

    set(xlist) 可以去重,生成集合set 类型。

  • 相关阅读:
    SpringBoot--整合Mybatis
    SpringBoot--使用JDBC连接mysql
    使用docker创建mysql容器
    iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport 3306 -j DNAT --to-destination 172.17.0.2:3306 ! -i docker0: iptables: No chain/target/match by that name
    SpringBoot--配置文件
    yqq命令
    vim/vm命令后提示错误:Found a swap file by the name ".dockerfile.swp"
    推荐一个十分好看的开源博客系统
    [转]技术的热门度曲线
    逆向学习笔记(2)-这是代码还是数据
  • 原文地址:https://www.cnblogs.com/skyEva/p/5746778.html
Copyright © 2020-2023  润新知