当前位置: 首页 > article >正文

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

文章目录

  • 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.kler.cn/news/362902.html

相关文章:

  • vue3处理货名的拼接
  • pytorch dataloader学习
  • 天线有源数据和无源数据有什么区别
  • 【C++】踏上C++学习之旅(三):“我“ 与 “引用“ 的浪漫邂逅
  • 通用大模型应用研究七:RAGOS和AgentOS
  • nginx编译安装配置选项详解
  • 六大知名Web安全漏洞靶场
  • AI虚拟主播之面部捕捉与生成!
  • 在linux上部署ollama+open-webu,且局域网访问教程
  • centos 和 Ubuntu 离线安装 lvm
  • 【Android】图片点击放大放小
  • 【数据结构与算法】之链表经典算法大集合
  • 2024.10.23 软考学习笔记(知识点)
  • 【1024程序员节】Mini-Omni2:实现具有视觉、语音和双工功能的开源 GPT-4o 模型
  • FPGA实现UDP通信(4)——数据接收实现
  • Hadoop 安装教程——单节点模式和分布式模式配置
  • freeswitch-esl动态控制录制音频(开始、停止)
  • 项目提测质量不高导致延期何解?
  • Rust中的Send特征:线程间安全传输所有权详解
  • shell——正则表达式入门
  • Python知识点:基于Python工具,如何使用Stellar SDK进行金融应用开发
  • Java | Leetcode Java题解之第504题七进制数
  • Godot Zelda教程练习1
  • 基于neo4j的知识图谱展示系统
  • 深度学习 之 模型部署 使用Flask和PyTorch构建图像分类Web服务
  • 使用pyqt创建一个移动的矩形