首页 > 编程语言 >常用Python数据分析开源库:Numpy、Pandas、Matplotlib、Seaborn、Sklearn介绍

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

时间:2024-10-17 19:17:26浏览次数:8  
标签:Seaborn Python Matplotlib np import Numpy Pandas

文章目录

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 上
    • 简化了机器学习的工作流程,提高了模型的性能和准确性

标签:Seaborn,Python,Matplotlib,np,import,Numpy,Pandas
From: https://blog.csdn.net/m0_70882914/article/details/142998347

相关文章

  • PyCharm配置PyTorch环境(完美解决找不到Conda可执行文件python.exe问题)
    出现的问题以下是第一次踩坑的流程,具体解决方法附在后面新建一个python项目,如图所示设置相关信息设置项目名称和位置interpretertype(python解释器类型)==>自定义环境环境==>Generatenew,创建一个新环境类型==>condapython==>3.11,如下所示,在创建好的conda环境中使用的......
  • spark运行报错:env: “/home/hadoop/anaconda3/envs/pyspark/bin/python3.8“: 没有那
    在进入spark的过程中,出现报错【env:"/home/hadoop/anaconda3/envs/pyspark/bin/python3.8":没有那个文件或目录】,当时我立马就被搞蒙了,百度了各种方法,最终都没有解决。当然有大佬说“进入conf目录下,修改spark-env.sh文件”,这个方法我也进行了修改,最终在终端输入./bin/pyspar......
  • python: unittest
     '''生成测试报告https://www.lambdatest.com/blog/generating-xml-and-html-report-in-pyunit-for-test-automation/unittesthttps://codedec.com/tutorials/how-to-generate-html-report-for-pytest-execution/https://docs.pytest.org/en/7.1.x/_modules/......
  • 17.Python基础篇-闭包、装饰器、迭代器、生成器
    函数的进阶—闭包闭包的定义:嵌套函数,内部函数调用外部函数的变量。满足这个条件就算闭包。闭包案例演示:defouter():a=1definner():print('inner函数中打印的变量a:',a)#嵌套函数中使用了外层函数的变量。此时满足了闭包的条件。returninner......
  • 风靡B站的《看漫画学Python》到底是什么来头?
     学习Python的小伙伴大部分应该都知道《看漫画学Python:有趣、有料、好玩、好用(全彩版)》这本书!毕竟,如果在B站搜索“漫画Python”等相关关键词,会看到整个页面都是和这本书相关的视频…… 郑重声明:这真不是出版社安排的,纯属各UP主们的自发行为,毕竟又是清华大佬,又是北大教......
  • 【2024华为OD-E卷-100分-内存资源分配】(题目+思路+Java&C++&Python解析+在线测试)
    在线评测链接题目描述有一个简易内存池,内存按照大小粒度分类,每个粒度有若干个可用内存资源,用户会进行一系列内存申请,需要按需分配内存池中的资源返回申请结果成功失败列表。分配规则如下:分配的内存要大于等于内存的申请量,存在满足需求的内存就必须分配,优先分配粒度小的......
  • Python代码覆盖率工具之Coverage
    Python代码覆盖率工具之Coverage在软件开发过程中,确保代码覆盖率是质量控制的关键一环。通过测量代码覆盖率,开发者可以了解哪些部分的代码正在被测试执行,哪些部分尚未被覆盖,从而优化测试策略,提高代码质量。在Python中,Coverage是一个非常流行且功能强大的代码覆盖率工具。本文将详......
  • Python桌面应用程序中的用户界面优化与体验
    Python桌面应用程序中的用户界面优化与体验从零开始:打造你的第一个Python桌面应用快速搭建基础界面:窗口、按钮和标签视觉盛宴:美化你的应用程序界面使用样式表定制外观:QtStyleSheets(QSS)示例图标与图像:让应用图标更吸引人添加应用图标主题切换:实现深色模式与浅色模......
  • Python中3个常见网络爬虫库
    在Python中,requests、Scrapy和Selenium是三个非常流行的库,它们都可以用来开发网络爬虫,但各有特点和适用场景,今天我们学习下它们的区别,便于我们日常使用选择。Requests:用途:是一个简单易用的HTTP库,用于发送网络请求。它允许你轻松地发送HTTP/1.1请求,无需手动添加查询字符串......
  • Bard-API:非官方的Google Bard Python接口包
    Bard-APIBard-API:非官方的GoogleBardPython接口包Bard-API是一个非官方的Python包,为开发者提供了一种简便的方式来访问和使用GoogleBard的功能。该项目由GitHub用户dsdanielpark开发和维护,旨在通过cookie值与GoogleBard进行交互,从而实现对Bard功能的调用。项目背景Goo......