Python numpy 模块介绍
作者:盆友圈的小可爱? 发布时间:2022-06-04 02:03:00
前言:
在motplotlib
的学习过程中,我们使用最多的就是numpy模块。
numpy
模块被称为 matplotlib
模块绘制图表伴侣。
xdm
,接下来我们来对 matplotlib
伴侣-numpy 模块相关知识的学习
1. numpy 简介
numpy 模块是 Python 支持对大量数组进行科学计算的第三方库。
numpy 模块在numpy官网文档中详细描述了numpy模块提供许多对多维数组对象、矩阵快速操作快速操作的功能。
数学、逻辑、形状操作
排序、选择、I/O
基本线性代数、基本统计运算、随机模拟
广播,字节交换
numpy 模块为开源代码,目前官网已经更新到1.22.0版本。
github源码链接,对其源码感兴趣的兄弟们可以康康哈~
numpy 应用场景
numpy 模块通常与matplotlib(绘图库) 一起使用。
在matplotlib绘制图表前进行对数据进行计算处理。
numpy 模块安装
由于numpy 模块是Python提供对数据处理的第三库,需要使用pip install来安装
pip install numpy
numpy 模块使用
在代码中,我们需要使用import 来进行导入
import numpy as np
2. numpy 特点
numpy 模板的核心是ndarray对象,这个对象封装同种类型的n维数组,将许多操作留在编译代码中执行,进而提高性能。
numpy array 与 python 内置的list区别点:
numpy
数组在创建时是固定大小,python list列表大小是动态变化的。如果要更改ndarray的大小则是将原始数组删除后重新创建新的数组numpy 数组中元素必须是同数据类型的,因而内存中的大小相同。
python list
可以允许不同类型的元素存在。numpy 数组对大量数据进行高级数学运算的执行效率比
Python list
更高numpy 数组在科学计算被大量使用,对目前主流的科学数学软件都是基于此模块。
3. numpy 常用方法
numpy 模块善于对大量数据进行科学计算,因此它不仅提供多维的数组对象array,还有通用函数方法等。
目前,我们此文章先介绍numpy
模块中常用的方法哈
方法 | 作用 |
---|---|
numpy.array(item) | 创建数组对象(可创建N维数组) |
numpy.arange(num) | 创建等差数组 |
numpy.random.randn(d0,d1,…,dn) | 创建随机正态分布 |
numpy.dtype() | 创建自定义数据类型 |
numpy.random.rand(d0,d1,…,dn) | 创建0~1的数据 |
numpy.random.randint(low,high) | 创建给定范围的随机整数 |
numpy.random.random_integers(low,high) | 返回给定范围随机整数 |
numpy.random.random(size) | 随机生成0,1之间的浮点数 |
numpy.random.choice(a,size) | 从给定的一维数组中生成随机数 |
numpy.random.seed() | 提前得知随机数据 |
numpy.linespcae() | 创建线性数组 |
numpy.sort() | 对数组数据进行排序 |
4. 实例
本期,我们将使用numpy进行创建数组、切片、索引、广播等功能实操
# 创建一个三维数组
arr = np.array([[0,0,0],[2,3,9],[1,2,3]])
# numpy通过索引或者切片来访问,arr[start:stop:step]
print("切片a[1:]:\n",arr[1:])
# 广播功能,两个数组进行➕
b = np.array([2,5,7])
print("arr+b:\n",arr+b)
总结:
本期,我们对matplotlib
绘图模块伴侣-numpy模块进行认识和了解。numpy 模块提供的数组对象让其在多维数据数学运算比Python内置方法更加高效。
来源:https://juejin.cn/post/7054205480192704542


猜你喜欢
- 本文所述实例可以实现基于Python的查看图片报纸《参考消息》并将当天的图片报纸自动下载到本地供查看的功能,具体实现代码如下:# codin
- 这是一个给新手学习代码的帖子,包含以下内容:如何使用UBB代码,如何用js与剪贴板交互,如何使用textRange对象,如何使用自定义的快捷
- 说实在的个人对游戏并没有多大的兴趣,但唯独对暴雪的Diablo系列很有感情,去年年初开始玩Diablo3,断断续续,感觉最麻烦的是选择技能,
- 弹出层提示信息,这是移动前端开发中最常见的需求,你可能会想到一些流行的弹框插件,比如 经典的artDialog 炫酷的Sweetalert等
- 目录一、任务二、实现(1)导库并创建画布(2)画图形(3)创建按钮和文本框(4)功能实现三、完整代码四、升级—绑定键盘事件总结一、任务用多个
- 本文实例讲述了Python动态生成多维数组的方法。分享给大家供大家参考,具体如下:多维数组其实就是多个一维数组的嵌套,Python中有原生的
- 1. 解压ZIP包和配置首先,将mysql-5.5.25-winx64.zip 解压缩到D:/mysql-5.5.25 目录下,然后根据网上
- 引言: 由于MySQL的数据库太大,默认安装的/var盘已经再也无法容纳新增加的数据,没有办法,只能想办法转移数据的目录。 下面我整理一下把
- 一、方法2此方法是两个表构建某一相同字段,然后全连接,在做匹配结果筛选,此方法针对数据量不大的时候,逻辑比较简单,但是内存消耗较大1. 导入
- 可以在Mac OS X 10.2.x(“Jaguar”)和以上版本上Mac OS X使用二进制安装软件包的PKG格式代替二进制分发版来安装M
- 前言远程执行命令有什么用?为什么要远程执行命令? 如果你只有2,3台服务器需要管理的时候,远程执行命令确实没有没多大作用,你可以登录到每台服
- 一、问题代码如下,发现标题的中文显示的是方块import matplotlibimport matplotlib.pyplot as plt
- 介绍本篇文章主要介绍如何爬取麦子学院的课程信息(本爬虫仍是单线程爬虫),在开始介绍之前,先来看看结果示意图怎么样,是不是已经跃跃欲试了?首先
- 1、简介本文主要给大家介绍了关于Laravel 5用Laravel Excel实现Excel/CSV文件导入导出的相关内容,下面话不多说了,
- 安装QT时在VS2019扩展里面下载QT工具时下载就一直卡在开始,如图: 网上搜索的一些改host和关ipv6的方法试了之后也没有
- 什么是 PiniaPinia (西班牙语中的菠萝),本质上依然是一个状态管理的库,用于跨组件、页面进行状态共享.pinia 与 vuex 的
- 在实际工作中,有时候需要对判断字符串是否为合法的json格式解决方法使用json.loads,这样更加符合‘Pythonic'写法代
- 前两天,班上同学写论文,需要将很多篇论文题目按照中文的习惯分词并统计每个词出现的频率。让我帮她实现这个功能,我在网上查了之后发现jieba这
- html代码:<!DOCTYPE html><html lang="en"><head&g
- 需要用到的库有selenium,还需要安装Chrome浏览器驱动,具体如何安装我就不详述了在这里我模拟了csdn的登录过程**1**.首先打