Python统计分析可视化库seaborn(相关性图,变量分布图,箱线图等等)

Visualization of seaborn
  seaborn[1]是一个建立在matplot之上,可用于制作丰富和非常具有吸引力统计图形的Python库。Seaborn库旨在将可视化作为探索和理解数据的核心部分,有助于帮人们更近距离了解所研究的数据集。无论是在kaggle官网各项算法比赛中,还是互联网公司的实际业务数据挖掘场景中,都有它的身影。

   在本次介绍的这个项目中,我们将利用seaborn库对数据集进行分析,分别展示不同类型的统计图形。

首先,我们将导入可视化所需的所有必要包,我们将使用到的几个包:

Numpy
pandas
matplotlib
seaborn

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

tips = pd.read_csv(‘tips.csv‘)
tips.head()

各属性相关性

# 相关性
tips.corr()
Out[2]:
            total_bill       tip      size
total_bill    1.000000  0.675734  0.598315
tip           0.675734  1.000000  0.489299
size          0.598315  0.489299  1.000000

pair plot图

#相关性图 很壮观
sns.pairplot(tips) 

看图说话:这些图展现了数据集中消费总额、小费金额以及顾客数量三个特征(变量)之间的联系。

#相关性图,和某一列的关系
sns.pairplot(tips ,hue =‘sex‘, markers=["o", "s"])

# 相关性热力图
sns.heatmap(tips.corr())

看图说话:热力图可用来显示两变量之间的相关性,在这里两变量间对应的矩形框的颜色越浅,代表两者之间越具有相关性。

# 分层相关性热力图
sns.clustermap(tips.corr())

g = sns.PairGrid(tips)
g.map_diag(sns.distplot)
g.map_upper(plt.scatter)
g.map_lower(sns.kdeplot)

看图说话:这个厉害了。在pair grid图中,你可以根据自己需求,在这里呈现上述介绍的各种类型的图形。

单个属性的分布

dist plot图

sns.distplot(tips[‘total_bill‘])

sns.distplot(tips[‘total_bill‘],kde = False)

看图说话:上图显示,顾客在餐厅的消费总金额主要是在5-35的范围内分布的。

count plot图

sns.countplot(x = ‘smoker‘, data = tips)

看图说话:上图显示,来餐厅就餐的顾客,不抽烟者比会抽烟者多

sns.countplot(x = ‘size‘,  data = tips)

 
看图说话:上图显示,2个人来餐厅就餐的总次数多一些。

rug plot图

sns.rugplot(tips[‘total_bill‘])

看图说话:上图呈现的是,顾客就餐消费总额在各个值上的边缘分布。

kde plot图

sns.kdeplot(tips[‘total_bill‘], shade=True)

看图说话:KDE代表内核密度估计,它也显示了各个消费总金额数值的统计分布。

两两属性的相关性图

joint plot图

sns.jointplot(x = ‘total_bill‘, y = ‘tip‘, data = tips)

看图说话:上图显示,顾客主要消费水平在10-30远之间,而此时,对应给侍者小费的钱在1-5元之间。

sns.jointplot(x = ‘total_bill‘, y = ‘tip‘, data = tips ,kind = ‘hex‘)

另一种清晰地可视化视图,颜色的深度代表频次。

sns.jointplot(x = ‘total_bill‘, y = ‘tip‘, data = tips ,kind = ‘reg‘)

看图说话:通过做一条简单的回归线,它表明了小费的金额是随着总账单金额的增加而增加的。

sns.jointplot(x = ‘total_bill‘, y = ‘tip‘, data = tips ,kind = ‘kde‘)

另一种可视化统计图:某个区域越暗,表明这个区域对应的频次越多。

box plot图

sns.boxplot(x = ‘day‘, y= ‘total_bill‘, data = tips)

看图说话:上图显示大部分账单是在周六和周日支付的。

sns.boxplot(x = ‘day‘, y= ‘total_bill‘, data = tips, hue = ‘sex‘)

看图说话:在上面的图表中你可以看到,在周六时,女性买单的次数会比男性多。(难道是因为买买买,男性付了好多钱,女性为了弥补男性的心里落差,然后请吃饭?哈哈)

violin plot

sns.violinplot(x = ‘day‘, y= ‘total_bill‘, data = tips)

看图说话:voilin plot和box plot很相似,但它结合了box plot图和密度痕迹。

sns.violinplot(x = ‘day‘, y= ‘total_bill‘, data = tips, hue = ‘sex‘, split = True)

看图说话:增加了性别的区分

strip plot图

sns.stripplot(x = ‘day‘, y = ‘total_bill‘, data = tips)

看图说话:这幅图呈现的是周四、周五、周六和周日这四天,顾客消费总额的散点图。

sns.stripplot(x = ‘day‘, y = ‘total_bill‘, data = tips, jitter= True,hue = ‘sex‘, dodge = True)

看图说话:和上图一样,只不过对性别进行了区别。

swarm plot图

sns.swarmplot(x = ‘day‘, y = ‘total_bill‘, data = tips)

看图说话:Swarn plot和stripplot比较类似,但Swarn plot的不同之处在于它不会重叠数据点。

factor plot图

sns.factorplot(x = ‘day‘, y = ‘total_bill‘, kind = ‘box‘, data = tips)

看图说话:在factorplot图中,你可以给出任何你需要显示的图形。

原文地址:https://www.cnblogs.com/caiyishuai/p/11184166.html

时间: 2024-10-03 00:30:15

Python统计分析可视化库seaborn(相关性图,变量分布图,箱线图等等)的相关文章

扩增子图表解读1箱线图:Alpha多样性

箱线图 箱形图(Box-plot)又称为盒须图.盒式图或箱线图,是一种用作显示一组数据分散情况资料的统计图.因形状如箱子而得名.在宏基因组领域,常用于展示样品组中各样品Alpha多样性的分布 第一种情况,最大或最小值没有超过1.5倍箱体范围 第二种情况,最大或最小值超过1.5倍箱体范围,外位延长线外,即异常值(outliers) Alpha多样性 知识背景:Alpha多样性计算方法 常见的丰度估计方法有Shannon, Chao1和Observed OTU和PD whole tree等.我最喜欢

Bokeh 0.12.2rc1 发布,Python 交互式可视化库

Bokeh 0.12.2rc1 发布了,Bokeh (Bokeh.js) 是一个 Python 交互式可视化库,支持现代化 Web 浏览器,提供非常完美的展示功能(app制作ty300.com).Bokeh 的目标是使用 D3.js 样式提供优雅,简洁新颖的图形化风格,同时提供大型数据集的高性能交互功能(入门教程qkxue.net).Boken 可以快速的创建交互式的绘图,仪表盘和数据应用. 小版本更新,暂无正式的改进说明,想了解更多信息,直接查看github提交记录.

Bokeh 0.12.3dev3,Python 交互式可视化库

Bokeh 0.12.3dev3 发布了,Bokeh (Bokeh.js) 是一个 Python 交互式可视化库,支持现代化 Web 浏览器,提供非常完美的展示功能(腾云科技ty300.com).Bokeh 的目标是使用 D3.js 样式提供优雅,简洁新颖的图形化风格,同时提供大型数据集的高性能交互功能(基础教程qkxue.net).Boken 可以快速的创建交互式的绘图,仪表盘和数据应用. 暂未发现更新内容,点击查看发行说明和提交记录: https://github.com/bokeh/bok

扩增子统计绘图1箱线图:Alpha多样性

绘制Alpha多样性线箱图 绘图和统计全部为R语言,建议复制代码,在Rstuido中运行,并设置工作目录为存储之前分析结果文件的result目录 # 运行前,请在Rstudio中菜单栏选择“Session - Set work directory -- Choose directory”,弹窗选择之前分析目录中的result文件夹 # 安装相关软件包,如果末安装改为TRUE运行即可安装 if (FALSE){ source("https://bioconductor.org/biocLite.R

pyhton中matplotlib箱线图的绘制(matplotlib双轴图、箱线图、散点图以及相关系数矩阵图))

//2019.07.23 1.箱形图,又称为盒式图,一般可以很好地反映出数据分布的特征,也可以进行多项数据之间分布特征的比较,它主要包含五个基础数据:中位数,两个上下分位数以及上下边缘线数据 其中的一些参数具体含义及其计算过程如下: 2.双轴图的绘制代码:import numpy as npimport matplotlib.pyplot as pltimport pandas as pdplt.rcParams["font.sans-serif"]=["SimHei&quo

Matlab boxplot for Multiple Groups(多组数据的箱线图)

在画之前首先介绍一下Matlab boxplot,下面这段说明内容来自http://www.plob.org/2012/06/10/2153.html 由于matlab具有强大的计算功能,用其统计数据功能优点显而易见,这里分享使用matlab中的boxplot的一些技巧,供大家参考. Matlab boxplot命令 格式如下 boxplot(X):产生矩阵X的每一列的盒图和“须”图,“须”是从盒的尾部延伸出来,并表示盒外数据长度的线,如果“须”的外面没有数据,则在“须”的底部有一个点. www

python3绘图示例4(基于matplotlib:箱线图、散点图等)

#!/usr/bin/env python# -*- coding:utf-8 -*- from matplotlib.pyplot import * x=[1,2,3,4]y=[5,4,3,2] # 创建新图标figure() # 对角线图 第1个参数:2行 第2个参数:3列的网格 第3个参数:图形在网格的位置subplot(231)plot(x,y) # 垂直柱状图subplot(232)bar(x,y) # 水平柱状图subplot(233)barh(x,y) # 堆叠柱状图-颜色间隔su

matplotlib学习日记(六)-箱线图

(一)箱线图---由一个箱体和一对箱须组成,箱体是由第一个四分位数,中位数和第三四分位数组成,箱须末端之外的数值是离散群,主要应用在一系列测量和观测数据的比较场景 import matplotlib as mpl import matplotlib.pyplot as plt import numpy as np mpl.rcParams["font.sans-serif"] = ["FangSong"] mpl.rcParams["axes.unicod

pandas 生成并排放置的条形图和箱线图

1.代码 import numpy as np import pandas as pd import matplotlib.pyplot as plt # 生成数据,创建 DataFrame np.random.seed(27) data = np.random.rand(7, 3) index = ['Customer ' + str(i) for i in range(1, 8)] Metrics = ['Metric ' + str(i) for i in range(1, 4)] df