【零基础入门Python数据分析】Anaconda3 JupyterNotebookseaborn版

news2024/11/16 4:13:39

目录

一、安装环境

python介绍

anaconda介绍

jupyter notebook介绍

anaconda3 环境安装

解决JuPyter500:Internal Server Error问题-CSDN博客

Jupyter notebook快捷键操作大全

二、Python基础入门

数据类型与变量

数据类型

变量及赋值

布尔类型与逻辑运算

输入输出

数据结构

列表(list)

元组(tuple)

字符串(string)

集合(set)

字典(dict)

字典取值赋值

字典遍历​编辑

字典嵌套

选择语句

双分支条件语句

多分支条件语句 

循环语句

for循环

while循环 

函数

函数定义与调用

函数的不同种类的参数

函数的递归调用

Lambda表达式&列表表达式

lambda表达式​编辑

列表表达式 

Map和Filter

Iterables与Iterators

类面向对象

类的定义

类的实例(对象)

类的访问限制

类的继承

类的多态

三、基于seaborn库的数据分析

Numpy与数组(矩阵)

安装方法:

一维矩阵

多维矩阵

随机矩阵 

Pandas与数据表

DataFrame 

np.array -> dataframe 

​dicts --> dataframe

读数据head()、tail() & 取数据loc()、iloc() 

​Using loc or iloc to access the elements

​convert Dataframes into array 

​读取CSV文件&获取基本表信息

Reading CSV 

URL to CSV 

Read Json to CSV 

convert Json to csv 

convert Json to different json formats 

Reading HTML​编辑

Reading Excel 

​Reading Pickling ​编辑

MatplotLib数据分析

安装方法:

导入函数库 

​线图​编辑

分割子图 

线图绘制函数图像 

散点图

柱状图

直方图

箱线图

热力图

小提琴图

饼图

Seaborn数据分析

导入seaborn库

加载数据集

关系类图表-散点图(scatterplot)

关系类图表-折线图(lineplot) 

分类图表-分类散点图(stripplot) 

分类图表-分类箱图(boxplot) 

​分类图表-小提琴图(violinplot)

​Categorical Plots分类图

​分布图-直方图(histogram)​

分布图-核密度估计图(kde plot) 

Dist plot分布图 

Correlation with Heatmap相关性热图 

JoinPlot联合图 

​Pair plot配对图 

划分网格FacetGrid() 

Univariate,Bivariate,MultiVariate Analysis & Histograms 

​数据预处理(数据加工)

数据分析 


一、安装环境

python介绍

Python具有多个优点,包括:

1. 语法简单:Python的语法设计直观且易于学习,相较于其他编程语言更为易上手。
2. 开源且免费:Python是开源的,这意味着开发者可以自由地使用和改变Python,并且不需要支付任何费用。
3. 面向对象:Python既支持面向过程编程,也支持面向对象编程,这使得它的应用范围非常广泛。
4. 良好的扩展性:Python能够很方便地与其他语言集成,因此被赞誉为“胶水语言”。
5. 丰富的库和框架:Python拥有大量的内置库和第三方库,可以帮助开发者快速实现各种功能。

然而,Python也存在一些缺点

1. 运行速度慢:由于Python是解释型语言,所以相比于编译型语言,其运行效率较低。
2. 不适合高级编程:虽然Python易于上手,但对于高度优化的程序来说,Python可能不是最佳选择。
3. 全局解释器锁(GIL):Python的解释器(CPython)存在全局解释器锁的问题,这会限制多线程的并行执行。
4. 编码规范不统一:由于Python是开源的,因此没有统一的编码规范,这可能导致代码风格混乱。

anaconda介绍

 Anaconda是一个开源的Python发行版本,其特点在于专注于数据分析,包含了conda、Python以及180多个科学包及其依赖项。它主要用于处理科学计算相关的任务,如数据分析和机器学习开发等。

Anaconda的一大优势是其强大的包管理功能。利用conda,开发者可以方便地安装、切换和管理第三方包及其环境。此外,Anaconda还提供了创建、删除虚拟环境的功能,使得不同项目的运行环境得以隔离,避免了不同库之间的冲突。

然而,需要注意的是,尽管Anaconda在数据科学领域表现优秀,但对于其他Python应用场景,它可能并非最佳选择。如果你仅仅是为了学习Python或者进行一些简单的开发任务,使用基础的Python发行版可能会更加轻便灵活。

jupyter notebook介绍

 

Jupyter Notebook是一个开源的交互式笔记本,支持运行多种编程语言,包括但不限于Python、RJupyter Notebook是一个开源的交互式笔记本,支持运行多种编程语言,包括但不限于Python、R、Julia和Scala等。它提供了一个基于网页的用户界面,允许用户在网页页面中直接编写代码、运行代码,以及查看结果。此外,Jupyter Notebook还支持Markdown语法和LaTeX数学公式,使得用户可以方便地编写包含代码、方程式、可视化和文本的复杂文档。

Jupyter Notebook的主要特点包括:支持代码与文本的混合编辑,可以实时查看代码运行结果,以交互方式进行数据探索和可视化分析,以及支持丰富的扩展功能。这些特性使得Jupyter Notebook在教学、科研和工业等领域得到了广泛的应用,特别是在数据分析和机器学习等领域,Jupyter Notebook已经成为了一个重要的开发工具。

 anaconda3 环境安装

 登录anaconda官网

Anaconda | The World’s Most Popular Data Science Platform

点击免费下载

如果不想改盘可以直接无脑安装在C盘

安装好后可以使用图形化导航启动(但是不提倡这种方式:一是因为图像化软件占用内存。二是运行缓慢)

更推荐下面这种运行方式:

命令行窗口启动项目

转移到工作目录

 输入dir指令可以看到文件下面的全部项目目录

使用命令行输入指令:jupyter notebook

可以看到浏览器端显示出磁盘下面相同的目录

如果启用jupyter遇到报错500的问题,参考以下方案:

解决JuPyter500:Internal Server Error问题-CSDN博客

 新建.ipynb即可进行笔记、编译、运行代码。

 选择代码块,shift+enter可以快速运行代码

  

Jupyter notebook快捷键操作大全

**常用的有:

A——向上添加单元格;

B——向下添加单元格;

X——剪切单元格

shift+回车——运行代码块;

编译模式下:shift+tab——查看函数功能

选中代码按下Tab键——代码整体缩进一格

ctrl+/——快速注释

Y: 把单元格变成代码快
M: 把单元格变成 Markdown

命令行模式(按 Esc 生效)编辑快捷键
F: 查找并且替换
Ctrl-Shift-F: 打开命令配置
Ctrl-Shift-P: 打开命令配置
Enter: 进入编辑模式
P: 打开命令配置
Shift-Enter: 运行单元格, 选择下面的单元格
Ctrl-Enter: 运行选中的单元格
Alt-Enter: 运行单元格并且在下面插入单元格
Y: 把单元格变成代码快
M: 把单元格变成 Markdown

R: 清除单元格格式
1: 把单元格变成标题 1
2: 把单元格变成标题 2
3: 把单元格变成标题 3
4: 把单元格变成标题 4
5: 把单元格变成标题 5
6: 把单元格变成标题 6

K: 选择上面的单元格
上: 选择上面的单元格
下: 选择下面的单元格
J: 选择下面的单元格
Shift-K: 扩展上面选择的单元格
Shift-上: 扩展上面选择的单元格
Shift-下: 扩展下面选择的单元格
Shift-J: 扩展下面选择的单元格
Ctrl-A: select all cells
A: 在上面插入单元格
B: 在下面插入单元格
X: 剪切选择的单元格
C: 复制选择的单元格
Shift-V: 粘贴到上面
V: 粘贴到下面
Z: 撤销删除单元格
D,D: 删除选中单元格
Shift-M: 合并选中单元格, 如果只有一个单元格被选中
Ctrl-S: 保存并建立检查点
S: 保存并建立检查点
L: 切换行号
O: 显示/隐藏选定单元格的输出
Shift-O: 切换选中单元格的输出为滚动
H: 显示键盘快捷键
I,I: 中断内核
0,0: 重启内核(带确认对话框)
Esc: 关闭分页器
Q: 关闭分页器
Shift-L: 在所有单元格中切换行号,并保持设置
Shift-空格: 向上滚动
空格: 向下滚动


编辑模式(按 Enter 生效)
Tab: 代码补全或缩进
Shift-Tab: 工具提示
Ctrl-]: 缩进
Ctrl-[: 取消缩进
Ctrl-A: 全选
Ctrl-Z: 撤销
Ctrl-/: 注释
Ctrl-D: 删除整行
Ctrl-U: 撤销选择
Insert: 切换重写标志
Ctrl-Home: 跳到单元格起始处
Ctrl-上: 跳到单元格起始处
Ctrl-End: 跳到单元格最后
Ctrl-下: 跳到单元格最后
Ctrl-左: 往左跳一个单词
Ctrl-右: 往右跳一个单词
Ctrl-退格: 删除前面的单词
Ctrl-Delete: 删除后面的单词
Ctrl-Y: 重做
Alt-U: 重新选择
Ctrl-M: 进入命令行模式
Ctrl-Shift-F: 打开命令配置
Ctrl-Shift-P: 打开命令配置


Esc: 进入命令行模式
Shift-Enter: 运行单元格, 选择下面的单元格
Ctrl-Enter: 运行选中的单元格
Alt-Enter: 运行单元格并且在下面插入单元格
Ctrl-Shift-Minus: split cell at cursor(s)
Ctrl-S: 保存并建立检查点
下: 光标下移
上: 光标上移
关闭

资源整理自——jupyter notebook 快捷键 - 知乎

二、Python基础入门

数据类型与变量

数据类型

Python中的数据类型可以分为以下八种基本类型:布尔型(bool)、整数型(int)、浮点数型(float)、字符串(String)、列表(List)、元组(Tuple)、集合(Set)和字典(Dictionary)。

布尔型(bool),也称为布尔类型,是Python的一种基础数据类型。在Python中,布尔型用bool表示,bool类是int类的子类。它主要用来表示逻辑上的真或假,即存在或不存在的情况。具体来说,布尔类型提供了两个布尔值:True和False。其中,True代表真(对)或存在,False代表假(错)或不存在。

整数型(int):一种用于表示整数的数据类型。

浮点数型(float):一种用于表示浮点数的数据类型。

字符串(String): 字符串是由字符组成的不可变序列。可以用单引号(' ')、双引号(" ")或三引号(''' '''或""" """)来表示字符串。

列表(List): 列表是一个有序的元素集合,可以包含任何类型的项目,并且可以进行修改。列表用方括号([])表示。

元组(Tuple): 元组与列表类似,但是元组是不可变的,一旦被声明,就不能修改。元组用圆括号(())表示。

集合(Set): 集合是一个无序的不重复元素序列。可以使用set()函数创建集合,或者使用大括号{}创建集合。注意:集合是无序的,且元素不能重复。

字典(Dictionary): 字典是一种可变的、无序的键值对集合。字典用大括号{}表示,每个元素是一个键值对。

 

变量及赋值

在Python编程语言中,变量是用来存储数据的容器。其基本概念、命名规范、作用域、类型等是编程的基础部分。Python中的变量类型多样,包括数字(如整数和浮点数)、字符串、列表、元组、字典等。

创建变量时,需要指定变量名和值。例如,创建一个名为num的整数型变量,可以写成num = 10。这里,=是赋值符号,其左侧是变量名,右侧是要赋给变量的值。

Python还允许多重赋值,即一次为多个变量赋值。例如,a, b = 1, 2就同时创建了两个变量a和b,并分别赋值为1和2。此外,Python也支持列表和字典这样的复合数据类型,可以为这些复合数据类型的每一个元素或键值对分别赋值。

需要注意的是,Python中的变量其实是对对象的引用,我们通过变量名来操作对象。当一个变量被赋予一个新的对象引用时,原对象将不再被使用。此外,Python还有全局变量和局部变量的概念,全局变量是在函数外部定义的变量,其作用域是整个程序;而局部变量是在函数内部定义的变量,其作用域仅限于函数内部。

 

布尔类型与逻辑运算

在Python编程语言中,布尔类型(bool)是一种基本的数据类型,它只有两个值:True和False。这种类型的变量通常用于表示逻辑判断的结果,比如真假、存在与否等。

与布尔类型密切相关的是逻辑运算。Python支持的逻辑运算主要有以下三种:

与运算(and):只有当两个布尔值都为True时,结果才为True。例如,True and True的结果为True,而True and False或者False and True的结果都为False。

或运算(or):只要有一个布尔值为True,结果就为True。例如,True or True的结果为True,而True or False的结果为True,False or False的结果为False。

非运算(not):对一个布尔值取反,True变为False,False变为True。

 

输入输出

 

数据结构


Python中的数据结构主要包括列表、元组、字符串、字典和集合等。

列表(list):是最常用的数据类型,可以对任意对象进行操作,如添加、删除和修改。同时,列表是可变的,即可以修改和扩充。此外,列表还可以当作堆栈或队列使用。

元组(tuple):与列表类似,但是元组是不可变的,即不能修改和扩充。不过,元组可以当作列表使用。

字符串(string):也是一种不可变的数据类型,不能修改和扩充。字符串是由字符组成的序列,可以当作列表使用。

集合(set):是另一种可变的数据类型,可以插入和删除。集合是由唯一元素组成的无序集合,可以进行集合运算和判断。例如,可以使用交集、并集、差集等运算。
以上这些数据结构都有各自的方法和用法,需要根据实际编程需求来选择和使用。

字典(dict):是一种可变的数据类型,可以插入和删除。字典是由键值对组成的无序集合,每个键对应一个值,通过键来访问值。字典的实现是Python的标准库中的dict,可以通过花括号、字典表达式和字典解析式来创建和操作。

python中使用下划线命名的规则python中使用下划线命名的规则_python下划线命名-CSDN博客

 dir()中的函数类型:

列表(list)

列表(list):是最常用的数据类型,可以对任意对象进行操作,如添加、删除和修改。同时,列表是可变的,即可以修改和扩充。此外,列表还可以当作堆栈或队列使用。

元组(tuple)

元组(tuple):与列表类似,但是元组是不可变的,即不能修改和扩充。不过,元组可以当作列表使用。

字符串(string)

字符串(string):也是一种不可变的数据类型,不能修改和扩充。字符串是由字符组成的序列,可以当作列表使用。

集合(set)

集合(set):是另一种可变的数据类型,可以插入和删除。集合是由唯一元素组成的无序集合,可以进行集合运算和判断。例如,可以使用交集、并集、差集等运算。 以上这些数据结构都有各自的方法和用法,需要根据实际编程需求来选择和使用。

字典(dict)

字典(dict):是一种可变的数据类型,可以插入和删除。字典是由键值对组成的无序集合,每个键对应一个值,通过键来访问值。字典的实现是Python的标准库中的dict,可以通过花括号、字典表达式和字典解析式来创建和操作。

 字典取值赋值

 字典遍历
 字典嵌套

选择语句

双分支条件语句

多分支条件语句 

循环语句

for循环

while循环 

函数

在Python编程语言中,函数是一种组织好的、可重复使用的代码段,用于实现单一或相关联的功能。你可以自定义一个符合自己需求的函数,其基本规则如下:

函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ()。

任何传入参数和自变量必须放在圆括号中间,圆括号之间可以用于定义参数。

函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。

函数内容以冒号 :起始,并且缩进。

此外,Python还支持函数递归,这意味着定义的函数能够调用自身。递归是一种常见的数学和编程概念,它通过循环访问数据以达成结果。同时,Python中定义好的函数是可以通过函数名称调取并重复使用的模块。


函数定义与调用

函数的不同种类的参数

在Python编程语言中,函数的参数是一种定义在函数名后的括号内,可以传递到函数中的值。你可以使用不同类型的参数来定制你的函数行为。

Python支持五种类型的参数:必选参数、默认参数、可变参数、关键字参数和命名关键字参数。

必选参数:这是函数定义时必须要有的参数,调用函数时必须传入对应的实际参数。

默认参数:这种参数在函数定义时不必传入,但在函数调用时如果没有提供对应的实际参数,那么就会使用默认值。注意,如果有多个默认参数,它们必须 在非默认参数之后。

可变参数:这种参数可以接受任意数量的实际参数。在定义时,可变参数前面有一个星号(*)。

关键字参数:这种参数允许你通过参数名指定实际参数的值,而不是通过位置。在函数调用时,关键字参数的顺序必须是匹配的。

命名关键字参数:这种参数结合了关键字参数和可变参数的特性。它可以接收任意数量的实际参数,并且可以通过参数名指定实际参数的值。在函数调用时,命名关键字参数的顺序是无所谓的。

这些参数类型可以组合使用,但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数。

 

函数的递归调用

Lambda表达式&列表表达式

Python中的Lambda表达式是一种简洁的创建匿名函数的方法。它允许你在一行代码中定义一个简单的函数,而不需要使用def关键字。Lambda表达式的基本语法如下:lambda 参数列表: 表达式

Lambda表达式有以下几个优点:

简洁:Lambda表达式可以用一行代码实现一个简单的函数,不需要使用def关键字和函数名。

匿名:Lambda表达式没有函数名,因此不需要显式地将函数赋值给一个变量。这使得在需要一个小的、临时使用的函数时,可以更加方便地编写和传递。

适用于高阶函数:Lambda表达式可以作为参数传递给其他函数,例如map()、filter()等高阶函数。这使得你可以使用简单的语法来处理复杂的操作。

适用于并行计算:Lambda表达式可以很容易地用于并行计算,因为它们可以在多个线程或进程之间共享和执行。

适用于数据预处理:在机器学习和数据分析中,经常需要对数据进行一些预处理操作,例如标准化、归一化等。Lambda表达式可以很方便地实现这些操作,而无需定义完整的函数。

列表表达式是一种简洁的创建列表的方法,它使用方括号[]将一系列元素括起来,并用逗号,分隔。

列表推导式具有以下几个显著的优点:

代码简洁:列表推导式能够在一行代码中完成生成列表的任务,相比于使用for循环来生成列表,代码量更少,更加简洁。这使得代码更易读、易理解,同时也减少了代码的维护工作。

高效性能:列表推导式相比于for循环在性能上更为高效。由于列表推导式是内置函数,在底层进行了优化,可以以更快的速度完成列表的生成。

功能更强大:列表推导式对于对列表进行变换和筛选非常方便和灵活。我们可以在表达式中加入判断语句,通过条件进行筛选,从而生成满足特定条件的列表。

可读性更好:由于列表推导式的语法结构独特且简洁,代码更易读、易理解。在使用列表推导式时,无需在代码中额外说明循环的细节,使得代码更加清晰,提高了代码的可读性。

 lambda表达式

列表表达式 

Map和Filter

map()和filter()是Python内置的高阶函数,它们都接受一个函数和一个可迭代对象(如列表、元组等)作为参数。

map()函数:map()函数用于映射,它将一个序列的每个元素依次传递给指定的函数进行操作,并返回一个包含所有结果的迭代器。它不会改变原数组,也不会检查空数组。

filter()函数:filter()函数用于过滤序列,它接收一个函数和一个序列作为参数,然后将该函数应用于序列的每个元素,最终返回一个由所有使得函数返回值为真的元素组成的迭代器。它会根据函数中的筛选条件将返回符合条件的结果组成一个新的数组并返回。

 

Iterables与Iterators

在Python编程中,Iterable和Iterator是两个非常重要的概念。可迭代对象(Iterable)是指可以使用for循环遍历的对象,例如列表、元组、字典等,它们遵循可迭代的协议,即包含iter()方法。而迭代器(Iterator)则是实现了迭代器协议的对象,具体来说,只要一个对象定义了next()(Python 2版本)或者next()(Python 3版本)方法,那么它就是一个迭代器。迭代器中的iter()方法应返回其自身,因此迭代器也是一种可迭代对象。

更具体地说,当我们使用for循环来遍历一个可迭代对象时,Python会自动将该可迭代对象转换为一个迭代器。在这个过程中,for循环首先调用该可迭代对象的iter()方法来获取该对象的迭代器,然后通过调用迭代器的next()或next()方法来获取序列中的下一个元素。当没有更多的元素可以访问时,next()或next()方法会抛出StopIteration异常,从而结束遍历。

类面向对象

Python中的类是一种面向对象编程的概念,它允许我们根据属性和方法来模拟现实世界中的事物。类的定义包括实例属性、类属性、方法和类的继承等基础知识。此外,Python还支持类的构造方法、参数、继承、方法重写等方面的知识,以及类的特殊属性和方法,如私有属性和私有方法。

类的定义

类的实例(对象)

类的访问限制

类的继承

类的多态

三、基于seaborn库的数据分析

Numpy与数组(矩阵)

NumPy是一个Python编程语言的库,它支持大型多维数组和矩阵,并提供了大量的高级数学函数来操作这些数组。它通常被用作Python科学计算的基础包。

安装方法:

打开anaconda prompt在窗口中输入安装指令:

pip install numpy 或者 conda install numpy

一维矩阵

 

多维矩阵

随机矩阵 

Pandas与数据表

DataFrame 

np.array -> dataframe 

 dicts --> dataframe

 

读数据head()、tail() & 取数据loc()、iloc() 

 Using loc or iloc to access the elements

convert Dataframes into array 

 读取CSV文件&获取基本表信息

Reading CSV 

 

 URL to CSV 

Read Json to CSV 

convert Json to csv 

 

convert Json to different json formats 

 

 Reading HTML

Reading Excel 

Reading Pickling 

MatplotLib数据分析

Matplotlib 是一个用于创建图表的库,它提供了多种图表类型和可视化选项。以下是一些常见的 Matplotlib 功能:

线图(Line graph):通过输入一维数据(如一组变量的数值),Matplotlib 可以生成线图,以显示数据随时间或其他连续变量的变化趋势。

散点图(Scatter plot):通过输入二维数据(如两组变量的观测值),Matplotlib 可以生成散点图,展示两个或更多组之间的关系。

柱状图(Bar chart):通过输入一维数据(如一组变量的数值),Matplotlib 可以生成柱状图,以直观地比较不同类别的数据。

直方图(Histogram):通过输入二维数据(如两组变量的观测值),Matplotlib 可以生成直方图,展示数据的分布情况。

箱线图(Box Plot):通过输入一维数据(如一组变量的数值),Matplotlib 可以生成箱线图,以直观地比较不同类别的数据。

热力图(Heat map):通过输入一维数据(如一组变量的数值),Matplotlib 可以生成热力图,显示数据之间的相关性。

小提琴图(Gir figure):一种用于表示数据的图形,通常用于表示分类数据。

饼图(pie chart):一种用于表示数据的图形,通常用于表示数据所占比例。

这些只是 Matplotlib 提供的部分图表类型。要查看所有可能的图表类型和选项,请查阅官方文档:Matplotlib — Visualization with Python

安装方法:

启动anaconda prompt在窗口中输入指令下载安装matplotlib 库:

conda install -c conda-forge matplotlib

或者

pip install matplotlib

导入函数库 

 线图

分割子图 

线图绘制函数图像 

 散点图

柱状图

直方图

箱线图

热力图

小提琴图

饼图

Seaborn数据分析

Seaborn是一个基于Python的非常受欢迎的数据可视化库,它以Matplotlib为基础进行了更高级的封装,从而使得作图过程更加方便快捷。通过Seaborn简洁的API,用户可以创建具有分析价值且美观的图形,即使是没有任何基础的人也能轻松上手。

Seaborn的一些主要特点包括:

提供了多种常见的图表类型,如散点图、线图、柱状图、箱线图等,可以快速创建各种美观而又有用的图表。

内置了多种不同的样式和颜色主题,可以轻松地修改图表的外观,使其更加符合个人或团队的品牌形象。

集成了多种统计分析工具,例如回归分析、核密度估计、分类汇总等,可以帮助用户更深入地理解数据,并从中发现有用的信息。

能够处理多变量数据,可以使用散点图、热力图等方式展示变量之间的关系和趋势。

此外,Seaborn还对Pandas和Numpy数据类型有着良好的支持,并且其图表接口和参数设置与Matplotlib非常接近。因此,在进行探索性数据分析(EDA)过程中,Seaborn往往能提供更高的效率。

安装方法:

启动anaconda prompt在窗口中下载安装包:

pip install seaborn 或者 conda install seaborn

图形种类:

Seaborn是一个基于Matplotlib的Python数据可视化库,它提供了更高级的接口用于绘制有吸引力和信息量的统计图形。Seaborn一共有5个大类21种图,包括:

Relational plots 关系类图表:relplot是关系类图表的接口,其实是下面两种图的集成,通过指定kind参数可以画出下面的两种图。这两种图分别是scatterplot散点图和lineplot折线图。

Categorical plots 分类图表:catplot是分类图表的接口,其实是下面八种图表的集成,通过指定kind参数可以画出下面的八种图。这八种图分别是:stripplot分类散点图、swarmplot能够显示分布密度的分类散点图、boxplot箱图、violinplot小提琴图、boxenplot增强箱图、pointplot点图、barplot条形图和countplot计数图。

Distribution plot 分布图:这类图像包括直方图、核密度估计图等,用于展示数据的分布情况。

在大多数情况下,使用Seaborn能做出很具有吸引力的图,而且Seaborn的图像风格更清爽,配色更加舒服,图形元素的样式更加细腻。

关系类图表:

散点图(scatterplot):用于展示两个变量之间的关系,例如不同城市的人口密度和平均收入。

折线图(lineplot):用于展示两个变量随时间的变化关系,例如某地区的GDP增长率。

分类图表:

分类散点图(stripplot):用于展示分类变量与数值变量之间的关系,例如不同性别的身高分布。

分类箱图(boxplot):用于展示分类变量的中位数、四分位数和异常值,例如不同年龄段的人的血压水平。

小提琴图(violinplot):用于展示分类变量的分布情况,同时显示每个类别的中位数、四分位数和异常值,例如不同国家的人口密度分布。

分布图:

直方图(histogram):用于展示数据的分布情况,例如某个城市的房价分布。

核密度估计图(kde plot):用于展示数据的分布情况,同时显示数据的平滑曲线,例如某个城市的房价密度分布。

导入seaborn库

 

加载数据集

线上加载

本地加载

下载数据集

seaborn-data: seaborn-data 数据集

 clone下来的数据集复制到项目目录 

通过修改参数路径加载数据集

关系类图表-散点图(scatterplot)

关系类图表-折线图(lineplot) 

分类图表-分类散点图(stripplot) 

分类图表-分类箱图(boxplot) 

 

 分类图表-小提琴图(violinplot)

 Categorical Plots分类图

 

 分布图-直方图(histogram)

分布图-核密度估计图(kde plot) 

Dist plot分布图 

 

Correlation with Heatmap相关性热图 

JoinPlot联合图 

Pair plot配对图 

 

划分网格FacetGrid() 

Univariate,Bivariate,MultiVariate Analysis & Histograms 

 

 数据预处理(数据加工)

数据分析 

 

 

 

 

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

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

相关文章

flutter报错Cannot hit test a render box that has never been laid out

出现这个问题的原因可能是因为你把一个ListView或者GridView放到了一个没有设置大小的容器里面导致的,所以意思是不能渲染那一个没有布局过的容器。我这里遇到的错误是因为我把GridView放到了一个Container里面,并且我没有设置Container宽高。 就导致了那…

linux如何排查cpu持续飙高原因

一、检查CPU使用率 首先在Linux系统中检查CPU使用率。可以通过在命令行中输入top或htop命令来查看当前系统中各个进程的CPU使用率。如果CPU使用率大于80%,则可以考虑进行排查。 $ top二、检查系统负载 另外可以使用uptime命令来查看系统的平均负载情况。 $ upti…

elasticsearch6.6.0设置访问密码

elasticsearch6.6.0设置访问密码 第一步 x-pack-core-6.6.0.jar第二步 elasticsearch.yml第三步 设置密码 第一步 x-pack-core-6.6.0.jar 首先破解 x-pack-core-6.6.0.jar 破解的方式大家可以参考 https://codeantenna.com/a/YDks83ZHjd 中<5.破解x-pack> 这部分 , 也可…

Zookeeper安装教程

文章目录 前言一、选择安装包二、使用wget下载并安装zookeeper 前言 Linux下Zookeeper安装步骤 一、选择安装包 Zookeeper下载地址&#xff1a;https://zookeeper.apache.org/releases.html 选择一个稳定版本即可&#xff0c;我这里选择的是3.7.2 点击“Apache ZooKeeper 3.…

考研C语言刷题篇之分支循环结构一

目录 第一题 第二题 方法一&#xff1a;要循环两次&#xff0c;一次求阶乘&#xff0c;一次求和。 注意&#xff1a;在求和时&#xff0c;如果不将sum每次求和的初始值置为1&#xff0c;那么求和就会重复。 方法二&#xff1a; 第三题 方法一&#xff1a;用数组遍历的思想…

Spring高手之路-Spring事务失效的场景详解

目录 前言 Transactional 应用在非 public 修饰的方法上 同一个类中方法调用&#xff0c;导致Transactional失效 final、static方法 Transactional的用法不对 Transactional 注解属性 propagation 设置不当 Transactional注解属性 rollbackFor 设置错误 用错注解 异常…

实战whisper:本地化部署通用语音识别模型

前言 Whisper 是一种通用语音识别模型。它是在大量不同音频数据集上进行训练的&#xff0c;也是一个多任务模型&#xff0c;可以执行多语言语音识别、语音翻译和语言识别。 这里呢&#xff0c;我将给出我的一些代码&#xff0c;来帮助你尽快实现【语音转文字】的服务部署。 以下…

最佳实践分享:SQL性能调优

SQL性能调优是一个需要不断探索和实践的过程&#xff0c;旨在确保数据库查询的高效运行。本文将分享一些SQL性能调优的最佳实践&#xff0c;帮助您提升数据库性能&#xff0c;减少查询响应时间。 一、索引优化 索引是提高查询性能的关键。以下是一些关于索引优化的建议&#…

使用micro-app将现有项目改造成微前端,对现有项目实现增量升级

使用micro-app将现有项目改造成微前端&#xff0c;对现有项目实现增量升级 基座应用 1、安装依赖 npm i micro-zoe/micro-app --save2、在入口引入 //main.js import microApp from micro-zoe/micro-appnew Vue({ }) //在new Vue 下面执行 microApp.start()3、新增一个vue页…

ASP.NET Core 的 Web Api 实现限流 中间件

Microsoft.AspNetCore.RateLimiting 中间件提供速率限制&#xff08;限流&#xff09;中间件。 它是.NET 7 以上版本才支持的中间件&#xff0c;刚看了一下&#xff0c;确实挺好用&#xff0c;下面给大家简单介绍一下&#xff1a; RateLimiterOptionsExtensions 类提供下列用…

5 个被低估的开源项目

文章目录 1.集算器 -数据处理2. Firecamp - 邮递员替代方案3.Keploy——后端 测试4. Hanko - 密钥验证5. Zrok - Ngrok 类固醇 长话短说 本文列出了五个不太受欢迎的优秀项目&#xff0c;您应该尝试一下。&#x1f525; 这些工具旨在改进数据处理、API 开发、后端测试、身份验…

MiniTab的拟合回归模型的系列参数设置

为拟合回归模型指定模型项 统计 > 回归 > 回归 > 拟合回归模型 > 模型 可以向模型添加交互作用项和多项式项。默认情况下&#xff0c;模型仅包含在主对话框中输入的预测变量的主效应。添加项的方法有很多。假设预测变量列表具有 3 个连续变量 X、Y、Z 和 2 个类别…

WPF XAML(二)

一、前言 本文是 WPF XAML&#xff08;一&#xff09;的续文&#xff0c;链接我就放下面了。 WPF XAML&#xff08;一&#xff09;-CSDN博客https://blog.csdn.net/qq_71897293/article/details/135537094?spm1001.2014.3001.5501 二、XAML 中空白与特殊字符 在XAML中我们在…

鸿蒙ArkTS的起源和简介

theme: lilsnake 1、引言 Mozilla创造了JS&#xff0c;Microsoft创建了TS&#xff0c;Huawei进一步推出了ArkTS。 从最初的基础的逻辑交互能力&#xff0c;到具备类型系统的高效工程开发能力&#xff0c;再到融合声明式UI、多维状态管理等丰富的应用开发能力&#xff0c;共同…

TA百人计划学习笔记 2.6伽马矫正

资料 源视频 【技术美术百人计划】图形 2.6 伽马校正_哔哩哔哩_bilibili PPT 2600_伽马矫正 参考笔记 2.6伽马&#xff08;Gamma&#xff09;校正 语雀 从0开始的技术美术之路&#xff08;十&#xff09;伽马校正_线性工作流 技术美术-CSDN博客为什么 韦伯定理 人眼对于暗部是…

《MyBatis》-- 流式查询内存性能优化-单条数据加工

阿丹-需求/场景&#xff1a; 在项目场景中涉及到数据二次加工。需要将单个对象数据转为按照规定的数据字典的转换。以及需要转换数据结构。从对象转换为按照规定的值和规则的数组。 因为要写入csv文件&#xff0c;涉及到文件的输出流。 之前讨论针对的解决方案&#xff1a; …

HCIP第一次练习 -- RIP复习实验

要求&#xff1a; 需求:R1-R2-R3-R4-R5运行RIPV2 R6-R7运行RIPV1 1.使用合理地址规划网络&#xff0c;各自创建环回接口 2.R1创建环回172.16.1.1/24172.16.2.1/24 172.16.3.1/24 3.要求R3使用R2访问R1环回 4.减少路由条自数量,增加路由传递安全性 5.R5创建一个环回模拟运营商,不…

FFmpeg之SwrRessample

文章目录 一、概述二、重采样流程三、重要结构体3.1、SwrContext3.2、ResamplerContext 四、重要函数4.1、swr_alloc4.2、swr_alloc_set_opts4.3、av_opt_set_*4.4、swr_init4.5、av_samples_alloc_array_and_samples4.6、av_samples_alloc4.7、swr_convert4.8、swr_get_delay4…

Apache Solr <= 8.8.1任意文件读取漏洞复现CVE-2019-17558

一、环境准备 搭建环境vulhub&#xff0c;需要提前安装docker环境 docker安装&#xff1a;docker--安装docker-ce-CSDN博客 vulhub地址&#xff1a;https://github.com/vulhub/vulhub #创建靶场环境 mkdir /opt/vulhub cd /opt/vulhub git https://github.com/vulhub/vulhu…

Python基础知识:整理15 列表的sort方法

1 sorted() 方法 之前我们学习过 sorted() 方法&#xff0c;可以对列表、元组、集合及字典进行排序 # 1.列表 ls [1, 10, 8, 4, 5] ls_new sorted(ls, reverseTrue) print(ls_new) …