相关性的可视化展示python

一 操作说明

使用Python可求取对应数据的相关性,两列数据之间的相关性系数的展示并不直观
如果进行图形化的展示,可以帮助使用者更好理解当前的数据
使用python的画图matplotlib的工具包和seaborn的工具
使用sklearn的鸢尾花数据进行数据演示

二 代码展示

通常情况下展示的两列关系散点图(手工,不直观):

# 引入工具包
from sklearn.datasets import load_iris
from sklearn.decomposition import PCA
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd


# 获取鸢尾花数据
iris= load_iris()
x=iris.data
y=iris.target

#画图
fig = plt.figure()
axe1 = fig.add_subplot(2,3,1)
axe2 = fig.add_subplot(2,3,2)
axe3 = fig.add_subplot(2,3,3)
axe4 = fig.add_subplot(2,3,4)
axe5 = fig.add_subplot(2,3,5)
axe6 = fig.add_subplot(2,3,6)
axe1.scatter(x[y==0,0],x[y==0,1],c='red',label=iris.target_names[0])
axe1.scatter(x[y==1,0],x[y==1,1],c='green',label=iris.target_names[1])
axe1.scatter(x[y==2,0],x[y==2,1],c='blue',label=iris.target_names[2])


axe2.scatter(x[y==0,0],x[y==0,2],c='red',label=iris.target_names[0])
axe2.scatter(x[y==1,0],x[y==1,2],c='green',label=iris.target_names[1])
axe2.scatter(x[y==2,0],x[y==2,2],c='blue',label=iris.target_names[2])

axe3.scatter(x[y==0,0],x[y==0,3],c='red',label=iris.target_names[0])
axe3.scatter(x[y==1,0],x[y==1,3],c='green',label=iris.target_names[1])
axe3.scatter(x[y==2,0],x[y==2,3],c='blue',label=iris.target_names[2])

axe4.scatter(x[y==0,1],x[y==0,2],c='red',label=iris.target_names[0])
axe4.scatter(x[y==1,1],x[y==1,2],c='green',label=iris.target_names[1])
axe4.scatter(x[y==2,1],x[y==2,2],c='blue',label=iris.target_names[2])

axe5.scatter(x[y==0,1],x[y==0,3],c='red',label=iris.target_names[0])
axe5.scatter(x[y==1,1],x[y==1,3],c='green',label=iris.target_names[1])
axe5.scatter(x[y==2,1],x[y==2,3],c='blue',label=iris.target_names[2])

axe6.scatter(x[y==0,2],x[y==0,3],c='red',label=iris.target_names[0])
axe6.scatter(x[y==1,2],x[y==1,3],c='green',label=iris.target_names[1])
axe6.scatter(x[y==2,2],x[y==2,3],c='blue',label=iris.target_names[2])

展示图片如下:
在这里插入图片描述
使用seaborn辅助工具

# 引入工具包
from sklearn.datasets import load_iris
from sklearn.decomposition import PCA
import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pd

# 获取鸢尾花数据
iris= load_iris()
x=iris.data
y=iris.target
#数据格式转换
px = pd.DataFrame(x)
#获取相关系数
px.corr()
#展示两列关系图
#kind:用于控制非对角线上图的类型,可选'scatter'与'reg'
#diag_kind:用于控制对角线上的图分类型,可选'hist'与'kde'
#对角线上是各个属性的直方图(分布图)
sns.pairplot(px)
sns.pairplot(px,kind='reg',diag_kind='hist')
#展示相关系数热力图
sns.heatmap(px.corr())

展示结果如下:
相关系数:
在这里插入图片描述
相关性散点图:
在这里插入图片描述
展示线性关系:
在这里插入图片描述
相关性热力图:
在这里插入图片描述

  • 1
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于 Python 中的相关性分析可视化,有几个常用的库和方法可以使用。 1. Pandas:Pandas 是一个强大的数据处理库,可以用于加载、处理和分析数据。它提供了一些函数来计算数据列之间的相关性,例如 `corr()` 函数。你可以使用 Pandas 提供的相关性函数来计算数据集中各个变量之间的相关性,并将结果可视化。 2. Matplotlib:Matplotlib 是一个广泛使用的绘图库,可以用于创建各种类型的图表,包括散点图、柱状图和热力图等。你可以使用 Matplotlib 中的函数来绘制相关性矩阵、散点图和其他类型的图表,以便可视化数据变量之间的相关性。 3. Seaborn:Seaborn 是基于 Matplotlib 的高级绘图库,提供了更简单的接口和更漂亮的默认样式。它提供了一些函数来绘制各种类型的统计图表,包括热力图、散点图和分布图等。你可以使用 Seaborn 来可视化相关性矩阵和其他与相关性分析相关的图表。 下面是一个简单的示例代码,演示如何使用 Pandas、Matplotlib 和 Seaborn 进行相关性分析可视化: ```python import pandas as pd import matplotlib.pyplot as plt import seaborn as sns # 加载数据 data = pd.read_csv('data.csv') # 计算相关性 correlation_matrix = data.corr() # 绘制相关性矩阵 plt.figure(figsize=(10, 8)) sns.heatmap(correlation_matrix, annot=True, cmap='coolwarm') plt.title('Correlation Matrix') plt.show() # 绘制散点图 sns.scatterplot(x='x', y='y', data=data) plt.title('Scatter Plot') plt.show() ``` 请注意,上述代码中的 `'data.csv'` 是一个包含你要分析的数据的 CSV 文件路径。你需要将其替换为你自己的数据文件路径。另外,你还可以根据需要调整图表的大小、颜色映射和其他绘图参数。 希望这个示例能帮助你开始进行 Python 中的相关性分析可视化。如果你有更多具体的问题,请随时提问!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值