常用Python数据分析开源库:Numpy、Pandas、Matplotlib、Seaborn、Sklearn介绍

news2024/10/21 4:25:02

文章目录

  • 1. 常用Python数据分析开源库介绍
    • 1.1 Numpy
    • 1.2 Pandas
    • 1.3 Matplotlib
    • 1.4 Seaborn
    • 1.5 Sklearn

1. 常用Python数据分析开源库介绍

1.1 Numpy

Numpy(Numerical Python)是Python数据分析必不可少的第三方库,Numpy的出现一定程度上解决了Python运算性能不佳的问题,同时提供了更加精确的数据类型,使其具备了构造复杂数据类型的能力。
- Numpy是一个运行速度非常快的数学库,主要用于数组计算,包含:

  • 高性能科学计算和数据分析的基础包。
  • ndarray,全称为 N-dimensional array(N 维数组),具有矢量(向量)运算能力,快速、节省空间。
  • 矩阵运算,无需循环,可完成类似Matlab(商业数学软件)中的矢量运算。
  • 用于读写磁盘数据的工具以及用于操作内存映射文件的工具
  • 示例代码1:无需使用循环逐个元素地进行操作
import numpy as np
a = np.array([1,2,3])
b = np.array([1,2,3])
c = a + b
print(c)  # [2 4 6]
  • 示例代码:计算两个向量的点积
a = np.array([1,2,3])
b = np.array([1,2,3])
res = np.dot(a,b)
print(res)  # 14

1.2 Pandas

在这里插入图片描述

  • Pandas是一个强大的分析结构化数据的工具集,Pandas丰富的API能够更加灵活、快速的对数据进行清洗处理以及分析
  • Pandas在数据处理上具有独特的优势:
    • Pandas底层是基于Numpy构建的,所以运行速度特别的快。
    • Pandas有专门的处理缺失数据的API 。
    • Pandas具有强大而灵活的分组、聚合、转换功能。
  • Pandas利器之Series
    • Series是一种类似于一维数据的数据结构。
    • 是由一组数据(各种Numpy数据类型)以及一组与之相关的数据标签(即行索引)组成。
    • 仅由一组数据也可产生简单的Series对象。
  • Pandas利器之DataFrame
    • DataFrame是一种表格型的数据结构,既有行索引也有列索引,可以简单的把DataFrame理解为一张数据表。
    • 包含有一组或多组有序的列(Series),每列可以是不同的值类型(数值、字符串、布尔型等)。

1.3 Matplotlib

在这里插入图片描述
Matplotlib是一个功能强大的数据可视化开源Python库

  • Python中使用最多的图形绘图库
  • 可以创建静态、动态和交互式的图表
  • 通过简单的代码调用,可以绘制出复杂的图形。
  • 示例:
import numpy as np
import matplotlib.pyplot as plt
#解决中文乱码
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False

# 生成数据
x = np.linspace(0, 3, 100)
y_sin = np.sin(x)
y_line = np.ones_like(x) * (x <= 1.5)

# 绘制图形
plt.plot(x, y_sin, label='sin函数图', color='blue')
plt.plot(x, y_line, label='折线图', color='red', linestyle='--')

# 添加图例
plt.legend()

# 设置坐标轴标签
plt.xlabel('x')
plt.ylabel('y')

# 设置标题
plt.title('Sin and Line Graphs')

# 显示图形
plt.show()

运行结果:
在这里插入图片描述

1.4 Seaborn

  • Seaborn是一个Python数据可视化开源库。
  • 建立在Matplotlilb之上,并集成了Pandas的数据结构。
  • Seaborn通过更简洁的API来绘制信息更丰富,更具吸引力的图像。
  • 面向数据集的API,与Pandas配合使用比直接使用Matplotlib更方便。
  • 用户无需过多关注底层细节即可生成高质量的图表。
  • 示例:
import seaborn as sns
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd

# 生成数据
x = np.linspace(0, 14, 100)
y1 = np.sin(x)
y2 = np.cos(x)
y3 = np.sin(x + np.pi/4)
y4 = np.cos(x + np.pi/4)

# 创建DataFrame
data = pd.DataFrame({
    'x': np.tile(x, 4),
    'y': np.concatenate([y1, y2, y3, y4]),
    'group': np.repeat([1, 2, 3, 4], len(x))
})

# 设置Seaborn样式和调色板
sns.set_style("whitegrid")
sns.set_palette("husl")

# 使用Seaborn绘图并显示
sns.lineplot(x='x', y='y', hue='group', data=data)
plt.show()

运行结果:
在这里插入图片描述

1.5 Sklearn

在这里插入图片描述

  • scikit-learn是基于Python语言的机器学习工具
    • 简单高效的数据挖掘和数据分析工具
    • 可以在各种环境中重复使用
    • 建立在Numpy、 SciPy(Scientific Python) 和 matplotlib 上
    • 简化了机器学习的工作流程,提高了模型的性能和准确性

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

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

相关文章

解决VScode(Visual Studio Code)中的乱码问题. 2024-10-13

系统环境: win10 64bit , vscode 1.94.2 1.乱码原因 默认使用utf-8编码,导致非utf-8内容乱码 2.解决乱码问题 1)打开设置 点击左下角的齿轮,然后再点击设置 2)启用编码自动检测 在设置搜索框中输入 编码 ,然后启用 自动猜测编码选项 3.乱码问题解决 重新打开文件后,乱码问…

清空redo导致oracle故障恢复---惜分飞

客户由于空间不足,使用> redo命令清空了oracle的redo文件 数据库挂掉之后,启动报错 Fri Oct 04 10:32:57 2024 alter database open Beginning crash recovery of 1 threads parallel recovery started with 31 processes Started redo scan Errors in file /home/oracle…

各种查询sql介绍

1. 关联查询&#xff08;JOIN&#xff09; 关联查询用于从多个表中检索数据。它基于两个或多个表之间的共同字段&#xff08;通常是主键和外键&#xff09;来组合数据。 内连接&#xff08;INNER JOIN&#xff09;&#xff1a; sql SELECT a.name, b.order_date FROM custome…

IO进程---day5

1、使用有名管道实现两个进程之间的相互通信 //管道文件 #include<myhead.h> int main(int argc, const char *argv[]) {//创建有名管道文件1if(mkfifo("./pipe1",0664)-1){perror("创建管道文件失败");return 0;}if(mkfifo("./pipe2",066…

upload-labs靶场Pass-03

upload-labs靶场Pass-03 分析源码 $is_upload false; $msg null; if (isset($_POST[submit])) {if (file_exists(UPLOAD_PATH)) {$deny_ext array(.asp,.aspx,.php,.jsp);$file_name trim($_FILES[upload_file][name]);$file_name deldot($file_name);//删除文件名末尾的…

Damn-Vulnerable-Drone:一款针对无人机安全研究与分析的靶机工具

关于Damn-Vulnerable-Drone Damn-Vulnerable-Drone是一款针对无人机安全研究与分析的靶机工具&#xff0c;广大研究人员可以利用该环境工具轻松学习、研究和分析针对无人机安全态势。 Damn Vulnerable Drone 基于流行的 ArduPilot/MAVLink 架构&#xff0c;其中故意留下了各种…

PDF 软件如何帮助您编辑、转换和保护文件

如何找到最好的 PDF 编辑器。 无论您是在为您的企业寻找更高效的 PDF 解决方案&#xff0c;还是尝试组织和编辑主文档&#xff0c;PDF 编辑器都可以在一个地方提供您需要的所有工具。市面上有很多 PDF 编辑器 — 在决定哪个最适合您时&#xff0c;请考虑这些因素。 1. 确定您的…

基于 Konva 实现Web PPT 编辑器(三)

完善公式 上一节我们简单讲述了公式的使用&#xff0c;并没有给出完整的样例&#xff0c;下面还是完善下相关步骤&#xff0c;我们是默认支持公式的编辑功能的哈&#xff0c;因此&#xff0c;我们只需要提供必要的符号即可&#xff1a; 符号所表达的含义是 mathlive 的command命…

从0开始深度学习(12)——多层感知机的逐步实现

依然以Fashion-MNIST图像分类数据集为例&#xff0c;手动实现多层感知机和激活函数的编写&#xff0c;大部分代码均在从0开始深度学习&#xff08;9&#xff09;——softmax回归的逐步实现中实现过 1 读取数据 import torch from torchvision import transforms import torchv…

JavaCove部署文档

1. 基础配置 1.1服务器&#xff1a; 2 核 2G 1.2. 一个域名 1.3. 项目地址&#xff1a; gitee:https://gitee.com/guo-_jun/JavaCove github:https://github.com/nansheng1212/JavaCove 2. CentOS 安装 Docker 官方网站上有各种环境下的 安装指南&#xff0c;这里主要介绍…

webpack自定义插件 ChangeScriptSrcPlugin

插件文件 class ChangeScriptSrcPlugin {apply(compiler) {const pluginName "ChangeScriptSrcPlugin";compiler.hooks.compilation.tap(pluginName, (compilation, callback) > {compilation.hooks.htmlWebpackPluginAlterAssetTags.tapAsync(pluginName,(html…

SpringCloudStream使用StreamBridge实现延时队列

利用RabbitMQ实现消息的延迟队列 一、安装RabbitMQ 1、安装rabbitmq 安装可以看https://blog.csdn.net/qq_38618691/article/details/118223851,进行安装。 2、安装插件 安装完毕后,exchange是不支持延迟类型的,需要手动安装插件,需要和安装的rabbitmq版本一致 https:…

动态规划:17.简单多状态 dp 问题_买卖股票的最佳时机III_C++

题目链接&#xff1a; 一、题目解析 题目&#xff1a;123. 买卖股票的最佳时机 III - 力扣&#xff08;LeetCode&#xff09; 解析&#xff1a; 拿示例1举例&#xff1a; 我们可以如图所示买入卖出股票&#xff0c;以求得最大利润&#xff0c;并且交易次数不超过2次 拿示…

基于SpringBoot设计模式之结构型设计模式·组合模式

文章目录 介绍开始架构图定义条目定义文件定义文件夹 测试样例 总结 介绍 能够使容器与内容具有一致性&#xff0c;创造出递归结构的模式就是 Composite 模式。Composite 在英文中是“混合物”“复合物”的意思。   以目录为例&#xff0c;在计算机中&#xff0c;某个目录下有…

在海外留学/工作,如何报考微软mos认证?

重点首先得强调的是&#xff0c;即使在海外也可以顺利地在国内获取微软MOS认证&#xff01; 01 微软mos认证简介 Microsoft Office Specialist 简称MOS。是微软公司和第三方国际认证机构、全球三大IT测验与教学中心之一的思递波/Certiport公司于1997年联合推出的&#xff0c;…

2009年国赛高教杯数学建模A题制动器试验台的控制方法分析解题全过程文档及程序

2009年国赛高教杯数学建模 A题 制动器试验台的控制方法分析 汽车的行车制动器&#xff08;以下简称制动器&#xff09;联接在车轮上&#xff0c;它的作用是在行驶时使车辆减速或者停止。制动器的设计是车辆设计中最重要的环节之一&#xff0c;直接影响着人身和车辆的安全。为了…

分享一个IDEA里面的Debug调试设置

1.问题来源 其实我们在这个IDEA里面的这个进行调试的时候&#xff0c;这个是只有步入&#xff0c;出去的选项的&#xff1b; 之前学习这个sort的底层源码的时候&#xff0c;进不去&#xff0c;我们是设置了一个取消java*什么的选项&#xff0c;然后使用这个step into就可以进…

计算机网络易混知识点

1.以太网采用曼彻斯特编码&#xff1b;以太网帧最短为64B&#xff0c;其中14个B首部(目的MAC-6B&#xff0c;源MAC-6B&#xff0c;类型-2B)4B尾部 2.OSI协议中&#xff0c;每一层为上一层提供服务&#xff0c;为下一层提供接口 3.帧序号的比特数表示的是发送窗口的大小&#…

java逻辑运算符 C语言结构体定义

1. public static void main(String[] args) {System.out.println(true&true);//&两者均为true才trueSystem.out.println(false|false);// | 两边都是false才是falseSystem.out.println(true^false);//^ 相同为false&#xff0c;不同为trueSystem.out.println(!false)…

(38)MATLAB分析带噪信号的频谱

文章目录 前言一、MATLAB仿真代码二、仿真结果画图总结 前言 本文给出带噪信号的时域和频域分析&#xff0c;指出频域分析在处理带噪信号时的优势。 首先使用MATLAB生成一段信号&#xff0c;并在信号上叠加高斯白噪声得到带噪信号&#xff0c;然后对带噪信号对其进行FFT变换&…