人工智能三剑客NumPy、pandas、matplotlib和Jupyter四者之间的关系

NumPy

  • 主要用途:NumPy(Numerical Python的缩写)主要用于处理大型多维数组和矩阵的科学计算。它提供了一个高性能的多维数组对象,以及用于数组操作的工具。
  • 与其他三者的联系:NumPy是pandas和matplotlib的基础库之一。许多pandas中的数据结构建立在NumPy数组之上,而matplotlib则常用于绘制NumPy数据结构中的数据。NumPy数组可以在Jupyter笔记本中直接使用,便于数据处理和分析。
  • 是什么:一个帮助你高效处理数字和数学计算的工具库。
  • 干什么用:主要用来做数学计算,比如加减乘除或更复杂的数学操作。
  • 与其他工具的联系:它是其他很多工具的基础,比如pandas和matplotlib都会用到NumPy来处理数据。

pandas

  • 主要用途:pandas是基于NumPy的库,专门用于数据清洗和分析。它提供了DataFrame和Series这两种主要的数据结构,能够方便地处理和分析结构化数据。
  • 与其他三者的联系:pandas使用NumPy作为其基础,利用NumPy的高性能数组计算能力。pandas的数据结构可以直接用于matplotlib中,以便进行数据的可视化。pandas也常在Jupyter笔记本中使用,以利用其强大的数据处理和分析功能。
  • 是什么:一个让你方便处理和分析表格数据(类似Excel表格)的工具库。
  • 干什么用:用来整理、清理数据和分析数据,比如找出数据中的平均值、最大值、最小值等。
  • 与其他工具的联系:pandas用NumPy来加速数学运算,而且pandas处理的数据可以用matplotlib画出图表。

matplotlib

  • 主要用途:matplotlib是一个用于创建静态、交互式和动画可视化的库。它提供了一个类似于MATLAB的绘图框架,可以用来绘制各种图表,如线图、柱状图、散点图等。
  • 与其他三者的联系:matplotlib可以直接使用NumPy数组或pandas数据结构(如DataFrame)作为数据源进行图表的绘制。在Jupyter笔记本中,matplotlib可以直接嵌入到代码单元中,实现数据的即时可视化。
  • 是什么:一个让你把数据变成图表(如柱状图、折线图等)的工具库。
  • 干什么用:用来将数据可视化,帮助你更直观地理解数据。
  • 与其他工具的联系:matplotlib可以画出NumPy和pandas处理的数据图表,让数据一目了然。

Jupyter

  • 主要用途:Jupyter是一个开源的交互式笔记本环境,支持包括Python在内的多种编程语言。它允许用户创建和分享包含代码、可视化图表和说明性文本的文档。
  • 与其他三者的联系:Jupyter是一个交互式的工作环境,可以直接使用NumPy、pandas和matplotlib库。用户可以在Jupyter笔记本中编写代码,使用NumPy进行数据操作,用pandas进行数据处理和分析,以及利用matplotlib进行数据的可视化。
  • 是什么:一个编程环境,你可以在里面写代码,运行代码,看到代码的运行结果,还可以加入说明文字。
  • 干什么用:让你边写代码边记录笔记,非常适合做数据分析和学习编程。
  • 与其他工具的联系:你可以在Jupyter里使用NumPy、pandas和matplotlib,这样既可以处理数据,也可以分析数据,还能把数据画成图表,最后把这一切整理成一份报告。

接下来使用一副画来展示四者之间的关系

在这里插入图片描述
在画布的左侧,有一座由基础的数字和数学符号(如加号、减号、乘号、除号)构成的坚固城堡,这代表了NumPy提供的数学和数字处理基础设施。城堡的旗帜上绘有一个灵巧的“N”,标志着NumPy的领地。

紧接着,在城堡的右侧,有一片繁忙的市场场景,各种摊位上堆满了表格、图表和数据列表,商人们在进行数据的买卖和分析,代表了pandas在数据处理和分析中的角色。市场的入口处挂着一块招牌,上面画有一个友好的“P”,引领着访客进入pandas的世界。

在画布的右上方,有一个艺术家正在用画笔和调色板在画布上绘制色彩斑斓的图表和图形,这位艺术家代表matplotlib,他正在将枯燥的数据转化为易于理解和赏心悦目的视觉图表。他的画架上挂着一块小牌子,上面绘有一个鲜明的“M”,展示了matplotlib的创造力。

最后,在整个场景的底部,有一个巨大的开放式工作室,里面布满了工作台,每个工作台上都有一本打开的大书,书页上显示着代码、图表和文本说明,代表Jupyter提供的交互式编程和文档编制环境。工作室的入口上方悬挂着一个巨大的“J”字母,欢迎每一个对数据科学感兴趣的探险家。

整个图像展示了NumPy、pandas、matplotlib和Jupyter之间的协作和各自的作用,如何共同构建起数据科学的生态系统。
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/769840.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络七层模型之应用层:理解网络通信的架构(七)

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

hcia datacom课程学习(3):http与https、FTP

1.超文本传输协议:http与https (1)用来访问www万维网。 wwwhttp+html+URLweb (2)它们提供了一种发布和接受html界面的方法:当在网页输入URL后,从服务器获取html文件来…

Java项目基于Docker打包发布

一、后端项目 1.打包应用 mvn clean package -DskipTests 2、新建dockerfile文件 #基础镜像 FROM openjdk:8 #工作空间 WORKDIR /opt #复制文件 COPY wms-app-1.0-SNAPSHOT.jar app.jar(add也可以) #配置容器暴漏的端口 EXPOSE 8080 //不暴露端口使用…

软件测试|Python random模块,超乎想象的强大

Python的random模块是一个非常强大的工具,用于生成随机数和随机选择。它提供了许多函数和方法,可以满足各种随机化需求。本文将介绍random模块的基本功能和常见用法,以帮助读者更好地理解和利用这个模块。 返回整数 random.randange() 语法…

关于 FastAPI 路径参数,你知道多少?

你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益: 了解大厂经验拥有和大厂相匹配的技术等 希望看什么,评论或者私信告诉我! 文章目录 一…

React Developer Tools安装

问题描述 在react开发中,需要插件来帮助我们开发,例如: 方法 (可能需要魔法 进去后搜索: 点击下载即可

【Nebula笔记】基础操作

目录 一、预备~ 二、基础操作 (一) 图空间 1. 创建图空间 2. 清空图空间 3. 其他 4. FAQ 执行DROP SPACE语句删除图空间后,为什么磁盘的大小没变化? (二) 点类型 1. 创建Tag 2. 删除Tag 3. 更新Tag 4. 其他 (三) 边类型 1. 创建Edge type…

git如何在某个commitId的状态提交到一个分支

有些时候,我们在使用子仓库,或者其他情况,会有一个状态是当前的git仓库是在一个commitId上,而没有在一个分支上: 这时如果想要把基于这个commitId创建一个分支,可以使用下面这个命令: git push…

HCIA实验

实验目的: 1、R6为ISP,接口IP地址均为公有地址,该设备只能配置IP地址,之后不能再对其进行任何配置; 2、R1-R5为局域网,私有IP地址192.168.1.0/24,请合理分配; 3、R1、R2、R4&#x…

JUC-多线程

目录 进程 线程 线程的串行 区别 多线程 进程 是指计算机中已执行的程序,曾经是分时系统的基本运作单位在面向进程设计的系统(如早期的UNIX,Linux 2.4及更早的版本)中,是程序的基本执行实体在面向线程设计的系统…

【网络建设与运维】2024年河北省职业院校技能大赛中职组“网络建设与运维”赛项规程

培训、环境、资料、考证 公众号:Geek极安云科 网络安全群:775454947 网络系统管理群:223627079 网络建设与运维群:870959784 极安云科专注于技能提升,赋能 2024年广东省高校的技能提升,在培训中我们的应急…

OSCP靶场--Crane

OSCP靶场–Crane 考点(CVE-2022-23940sudo service提权) 1.nmap扫描 ┌──(root㉿kali)-[~/Desktop] └─# nmap 192.168.229.146 -sC -sV --min-rate 2500 Starting Nmap 7.92 ( https://nmap.org ) at 2024-03-25 08:07 EDT Nmap scan report for 192.16…

Java 算法和数据结构 答案整理,最新面试题

Java中如何使用动态规划求解背包问题? 1、定义子问题: 首先确定动态规划状态,通常以物品数量和背包容量为变量定义子问题,例如dp[i][j]表示前i件物品放入容量为j的背包所能获得的最大价值。 2、确定状态转移方程: 基…

手撕算法-盛最多水的容器

描述 分析 两个板之间能盛下的水的量,取决于短板。想让两个板之间能盛下更多的水,需要改变短板的长度。就像水桶效应:那么用两个指针指向容器的两个板,然后每次移动较短的板即可。移动较短的板,可能会增大容积&#x…

计算机网络常见题(持续更新中~)

1 描述一下HTTP和HTTPS的区别 2 Cookie和Session有什么区别 3 如果没有Cookie,Session还能进行身份验证吗? 4 BOI,NIO,AIO分别是什么 5 Netty的线程模型是怎么样的 6 Netty是什么?和Tomcat有什么区别,特点是什么? 7 TCP的三次…

解决 cv2.imread读取带中文路径图片问题

http://t.csdnimg.cn/i8CXn 1.问题: # 中草药数据集样本可视化展示 import cv2 import matplotlib.pyplot as plt %matplotlib inline plt.title("heshouwu") plt.imshow(cv2.imread(r"D:\home\aistudio\data1\archive\train\何首乌\heshouwu_0001.…

[C语言]结构体、位段、枚举常量、联合体

目录 结构体 结构体的使用方法 结构体所占用的大小 位段 位段的使用方法 位段所占用的大小 枚举常量 枚举常量的使用方法 枚举常量的优势 联合体 联合体的使用方法 结构体 结构体的使用方法 结构体是一些值的集合,我们可以定义一个结构体,里…

数据结构入门框架

博主b站入口:Uncertanity的个人空间 参考资料: 《大话数据结构》程杰 《数据结构C语言(第二版)》严蔚敏

为什么静态成员函数不能是虚函数

在面向对象编程中,静态成员函数和虚函数都是常见的概念,但它们之间存在着本质上的差异。由于其特性上的差异,静态成员函数不能声明为虚函数。下面我们来探讨一下为什么静态成员函数不能是虚函数。 我在网上查到最多的说法是静态函数没有this指…

【OpenModelica】1 OpenModelica项目架构

1 OpenModelica项目架构 文章目录 1 OpenModelica项目架构一、 架构总览图二、OpenModelica各部分作用 一、 架构总览图 OpenModelica 环境由几个相互连接的子系统组成,如图 1.1 所示。 其中包括: MDT Eclipse 插件图形模型编辑器/浏览器文本模型编辑器…