• Python数据分析Numpy库方法简介(四)


    Numpy的相关概念2

    副本和视图

    • 副本:复制

      • 三种情况属于浅copy

        • 赋值运算

        • 切片

        • 视图:链接,操作数组是,返回的不是副本就是视图 c =a.view().创建a的视图/影子和切片一样都是浅copy

      • 深copy

        • b = a.copy

    向量化

    向量化和广播两个原理是矩阵内部原理

    • 向量化运算=矢量化运算(可避免循环,直接实现矩阵之间,对应元素进行操作)

     

    广播机制

    广播机制:维度不同的矩阵运算时低维数矩阵会自动补全

    • 原则1.1维数组可以和任意维度矩阵进行运算

    • 原则2:是低维度矩阵按照某个轴进行广播

      import numpy as np
      a = np.array([[1,3],
                  [2,4]])
      b = np.array([2])
      a+b # 结果 3 ,5,4,6

      b2 = np.array([[1],[3]])
      a+b2 #

     

    切片技巧

    • 切片时参数可为布尔条件

      a[a>5] 表示提取大于5的元素的数据
    • 切片时可以传递数组

      import numpy as np
      #索引技巧一维数组
      a = np.arange(12)
      b = np.array([1,2,6,8])
      a[b]#传递的参数是数组b
      """
      array([1, 2, 6, 8])
      """
      #实列2二维矩阵
      import numpy as np
      a = np.arange(1,9).reshape(3,3)
      b = np.array([[2,0],[1,2]])
      a[b]
      """

      array([[[7, 8, 9],
            [1, 2, 3]],

            [[4, 5, 6],
            [7, 8, 9]]])
      """

     

    拼接

    • vstack((数组,数组)) /([数组,数组]) 水平拼接

    • hstack((数组,数组)) 垂直拼接

  • 相关阅读:
    CSS3 background-size:cover/contain
    CSS3 filter(滤镜) 属性
    tomcat生成catalina.out文件
    关于海量数据存储与查询的思考
    java DDD 基于maven开发的探讨
    java heap 异常
    项目启动异常
    Windows下apache+tomcat负载均衡
    Objective-C 程序设计(第六版)第十一章习题答案
    Objective-C 程序设计(第六版)第十章习题答案
  • 原文地址:https://www.cnblogs.com/guofeng-1016/p/10102705.html
Copyright © 2020-2023  润新知