Python数据分析 | 统计与科学计算工具库Numpy介绍


ShowMeAI研究中心

作者:韩信子@ShowMeAI
教程地址:http://www.showmeai.tech/tutorials/33
本文地址:http://www.showmeai.tech/article-detail/141
声明:版权所有,转载请联系平台与作者并注明出处

一、NumPy介绍

数据分析、机器学习和深度学习领域,很多计算过程可以通过向量和矩阵进行并行化的高效处理,而NumPy可以很好地支撑向量化运算。NumPy 包是Python生态系统中科学计算的核心支撑之一,数据分析工具库 pandas,计算机视觉工具库OpenCV等库都基于NumPy。熟悉NumPy之后,知名的深度学习框架PyTorch、TensorFlow、Keras等,也可以直接迁移应用处理的方式,很多操作甚至无需更改就可以在GPU运行计算。

n维数组是NumPy的核心概念,大部分数据的操作都是基于n维数组完成的。本系列内容覆盖到1维数组操作、2维数组操作、3维数组操作方法,本篇为系列导入文章。

二、NumPy数组

2.1 列表 VS 数组

n维数组是NumPy中最核心的结构之一。数组与Python列表有些相似:都用来装载数据,都能够快速添加或获取元素,插入和移除元素则比较慢。

但NumPy数组因其广播特性可以直接进行算术运算,而Python列表则需要用列表推导式等操作来完成。对比示例如下(左侧为列表,右侧为NumPy数组):

2.2 Numpy数组其他特点

  • 更紧凑,高维时尤为明显

  • 向量化后运算速度比列表更快

  • 在末尾添加元素时不如列表高效(左侧为列表,右侧为NumPy数组)

  • 元素类型一般比较固定

其中,O(N)表示完成操作所需的时间与数组大小成正比(请见Big-O Cheat Sheet),O(1)表示操作时间与数组大小无关(详见Time Complexity)。

资料与代码下载

本教程系列的代码可以在ShowMeAI对应的github中下载,可本地python环境运行,能访问Google的宝宝也可以直接借助google colab一键运行与交互操作学习哦!

本系列教程涉及的速查表可以在以下地址下载获取:

  • Pandas速查表
  • Matplotlib速查表
  • Seaborn速查表

拓展参考资料

  • Pandas可视化教程
  • Seaborn官方教程

ShowMeAI相关文章推荐

  • 数据分析介绍
  • 数据分析思维
  • 数据分析的数学基础
  • 业务认知与数据初探
  • 数据清洗与预处理
  • 业务分析与数据挖掘
  • 数据分析工具地图
  • 统计与数据科学计算工具库Numpy介绍
  • Numpy与1维数组操作
  • Numpy与2维数组操作
  • Numpy与高维数组操作
  • 数据分析工具库Pandas介绍
  • 图解Pandas核心操作函数大全
  • 图解Pandas数据变换高级函数
  • Pandas数据分组与操作
  • 数据可视化原则与方法
  • 基于Pandas的数据可视化
  • seaborn工具与数据可视化

ShowMeAI系列教程推荐

  • 图解Python编程:从入门到精通系列教程
  • 图解数据分析:从入门到精通系列教程
  • 图解AI数学基础:从入门到精通系列教程
  • 图解大数据技术:从入门到精通系列教程

相关