zoukankan      html  css  js  c++  java
  • 假期学习总结1:Numpy基础操作

    1.numpy:NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。

    2.基础操作:

    import numpy as np
    #创建数组
    list_array=[1,2,3]
    print(np.array([list_array,list_array]))
    #创建全为0的数组
    print(np.zeros(shape=(3,4)))
    #创建全为1的数组
    print(np.ones(shape=(3,4)))
    #创建单位矩阵
    print(np.eye(3,4))
    #创建支持浮点数的数组
    print(np.arange(1,10,0.5))
    #创建不支持浮点数的数组
    print(range(1,10,2))
    #创建0-1的随机数
    print(np.random.rand(10))
    #创建10个服从标准正态分布的随机数
    print(np.random.randn(10))
    #创建1-10的随机数
    print(np.random.randint(10))
    #查看数组的维度
    array_test=np.array([list_array,list_array])
    print(array_test.ndim)
    #查看数组的行数和列数
    print(array_test.shape)
    #查看数组元素的元素总个数
    print(array_test.size)
    #查看数组的数据类型
    print(array_test.dtype)
    #访问元素
    b=np.array([[1,2,3],
               [4,5,6],
               [7,8,9]])
    print(b[1:,1:])#得到5,68,9冒号的意思是访问第2行及以后
    print(b[0:2,0:2])
    #将数组转换成矩阵
    c=b.reshape(3,3)
    print(c)
    #矩阵间的乘法
    e=np.matrix(np.arange(12).reshape(3,4))
    print(c.dot(e))
    View Code
    import numpy as np
    a=np.arange(6).reshape(2,3)
    b=np.arange(3).reshape(1,3)
    c=np.arange(8).reshape(2,4)
    #axis为0 按照垂直方向合并数组,列数相同
    print(np.concatenate([a,b],axis=0))
    print(np.vstack([a,b]))
    #axis为1,按照水平方向合并数组,行数相同
    print(np.concatenate([a,c],axis=1))
    print(np.hstack([a,c]))
    #数组的分割
    d=np.arange(8)
    print("d为:")
    print(d)
    print(np.split(d,[2,5]))#分成3部分0-12-4,5以后
    print(np.split(d,2))#平均分成2部分
    #矩阵的分割
    print(np.split(c,2,axis=0))#将矩阵按照水平方向分割成2部分
    print(np.split(c,2,axis=1))#将矩阵按照垂直方向分割成两部分
    #求一维数组的元素和,最大值,最小值
    print(np.sum(d))
    print(np.min(d))
    print(np.max(d))
    #多维度数组聚合
    print(np.sum(a,axis=0))#将a的每一列相加,axis=1将a的每一行相加
    print(np.mean(a))#取整个矩阵的均值,同样可以有axis参数
    #分位数
    print(np.percentile(d,q=25))#d数组中25%的数小于打印出的这个数
    View Code
    所学时间 3个小时
    博客量 1篇
    代码量
    所学知识 Numpy基础操作
  • 相关阅读:
    [SpringCloud] Hystrix原理及应用
    Excel框设置下拉选项
    The program no longer exists.
    win10 指纹登录修改用户密码
    git 比较两个分支内容差异
    C++ 已知两个时间(年月日)求日期差
    SELECT INTO 和 INSERT INTO SELECT 两种表复制语句详解(SQL数据库和Oracle数据库的区别)
    SQL Server查询优化方法
    xshell连接ubuntu虚拟机的方法
    beyond compare添加Java反编译插件
  • 原文地址:https://www.cnblogs.com/wangzhaojun1670/p/13456653.html
Copyright © 2011-2022 走看看