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

devtools/2024/10/21 17:07:30/

文章目录

  • 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:无需使用循环逐个元素地进行操作
python">import numpy as np
a = np.array([1,2,3])
b = np.array([1,2,3])
c = a + b
print(c)  # [2 4 6]
  • 示例代码:计算两个向量的点积
python">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中使用最多的图形绘图库
  • 可以创建静态、动态和交互式的图表
  • 通过简单的代码调用,可以绘制出复杂的图形。
  • 示例:
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更方便。
  • 用户无需过多关注底层细节即可生成高质量的图表。
  • 示例:
python">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.ppmy.cn/devtools/127618.html

相关文章

Linux LCD 驱动实验

LCD 是很常用的一个外设&#xff0c;在裸机篇中我们讲解了如何编写 LCD 裸机驱动&#xff0c;在 Linux 下LCD 的使用更加广泛&#xff0c;再搭配 QT 这样的 GUI 库下可以制作出非常精美的 UI 界面。本章我们就来学习一下如何在 Linux 下驱动 LCD 屏幕。 Framebuffer 设备 先来…

Gorm操作数据库,有和没有WithContext的区别

问题的提出 本人是Go服务器的新中新中新手&#xff0c;在使用数据库操作时&#xff0c;看到代码中有些查询语句会先调用WithContext再查询&#xff0c;如&#xff1a; //有WithContext dao.WinUser.WithContext(l.ctx).Where(...)//没有WithContext dao.WinUser.Where(...) …

第六章 元素应用CSS

6.1 使用CSS设置字体样式 6.1.1.字体类型 CSS 提供 font-family属性来控制文本的字体类型。 格式如下&#xff1a; font-family:字体名称; 参数&#xff1a;字体名称按优先顺序排列&#xff0c;以逗号隔开。如果字体名称包含空格&#xff0c;则应用引号括起。 说明&#xff…

电机学习-Park变换

一、Park变换 坐标关系&#xff1a; I d I α ∗ c o s θ e I β ∗ s i n θ e I_d I_\alpha*cos\theta_e I_\beta*sin\theta_e Id​Iα​∗cosθe​Iβ​∗sinθe​ I q − I α ∗ s i n θ e I β ∗ c o s θ e I_q -I_\alpha*sin\theta_e I_\beta*cos\theta_…

si551x时钟芯片linux下调试笔记

目录 前言一、依赖文档、工具二、让芯片工作的流程三、以上步骤的SOC下代码实现 前言 本文总结调试SKYWORKS芯片厂商Si5512时钟芯片时的笔记&#xff0c;基于linux5.10.xxx内核&#xff0c;在arm64架构的SOC上验证&#xff1b; 一、依赖文档、工具 文档名说明下载链接Si5518…

基于stm32的楼宇照明控制系统设计

基于stm32的楼宇照明控制系统设计 项目说明一、绪论1.1 研究背景1.2 研究意义1.4 研究内容 二、系统方案设计2.1 微控制器方案选择2.2 信息检测模块方案选择2.3 WiFi模块选择2.4 终端显示2.5 WiFi无线通信实现方法 三、系统硬件电路图设计3.1 整体电路图设计3.2 主控制器设计3.…

电脑格式化了还能恢复数据吗?

许多人在使用电脑时可能会误操作或出于需要对电脑硬盘进行格式化&#xff0c;格式化会迅速清空数据。问题是格式化后的数据还能恢复吗&#xff1f;答案是&#xff1a;在某些情况下&#xff0c;格式化后的数据是可以恢复的。不过&#xff0c;恢复的成功率取决于格式化的类型和后…

【进阶OpenCV】 (17)-- Dlib库 --实现人脸检测

文章目录 Dlib库一、Dlib库安装二、实现人脸检测1. 生成人脸检测器2. 检测人脸3. 显示人脸 总结 Dlib库 Dlib提供了丰富的图像处理和计算机视觉工具&#xff0c;如面部特征检测、物体检测、图像变换等&#xff0c;这些工具使得开发者能够轻松地进行各种图像处理任务。 一、Dl…