• 数据分析实战——04丨Python科学计算:用NumPy快速处理数据


    • 使用 NumPy 让你的 Python 科学计算更高效
      • 它不仅是 Python 中使用最多的第三方库,而且还是 SciPy、Pandas 等数据科学的基础库
      • 它所提供的数据结构比 Python 自身的“更高级、更高效”
    • 为什么要用 NumPy 数组结构而不是 Python 本身的列表 list?
      • 这是因为列表 list 的元素在系统内存中是分散存储的,而 NumPy 数组存储在一个均匀连续的内存块中
      • 这样数组计算遍历所有的元素,不像列表 list 还需要对内存地址进行查找,从而节省了计算资源
    • 需要一些技巧来提升内存和提高计算资源的利用率
      • 一个重要的规则就是:避免采用隐式拷贝,而是采用就地操作的方式
      • 举个例子,如果我想让一个数值 x 是原来的两倍,可以直接写成 x*=2,而不要写成 y=x*2
    • 在 NumPy 里有两个重要的对象
      • ndarray(N-dimensional array object)解决了多维数组问题
      • 而 ufunc(universal function object)则是解决对数组进行处理的函数
    • ndarray 对象
      • ndarray 实际上是多维数组的含义
      • 通过函数 shape 属性获得数组的大小,通过 dtype 获得元素的属性
    • ufunc 运算
      • ufunc 是 universal function 的缩写,它能对数组中每个元素进行函数操作
      • 统计最大值与最小值之差 ptp()
      • 统计数组的百分位数 percentile()
      • 统计数组中的中位数 median()、平均数 mean()
      • 统计数组中的加权平均值 average()
      • 统计数组中的标准差 std()、方差 var()
    • NumPy 排序
      • sort(a, axis=-1, kind=‘quicksort’, order=None),默认情况下使用的是快速排序
      • 在 kind 里,可以指定 quicksort、mergesort、heapsort 分别表示快速排序、合并排序、堆排序
  • 相关阅读:
    gitLab、docker
    Spring源码分析
    Tomcat堆内存分析
    Kafka入门一
    Java NIO
    spring注解
    websocket即时通讯
    pycharm安装dlib库
    python+opencv人脸识别是否戴口罩
    2021年暑假周总结1
  • 原文地址:https://www.cnblogs.com/minimalist/p/12803772.html
Copyright © 2020-2023  润新知