中级绘图--相关图

1 相关图

相关系数矩阵是多元统计分析的一个基本方面。哪些被考察的变量与其他变量相关性很强,

而哪些并不强?相关变量是否以某种特定的方式聚集在一起?相关图作为一种相对现代的方法,可以通过对相关系数矩阵的可视化来回答这些问题。

1.1  例1:mtcars数据框中的变量相关性为例,它含有11个变量,对每个变量都测量了32辆汽车

options(digits=2)   #options  允许用户设置和检查各种影响R计算和显示结果方式的全局选项,digits控制打印数值时要打印的有效数字,有效值为1...22,默认为7

cor(mtcars)      #列出数据集mtcars中11个变量的相关系数

 

利用corrgram包中的corrgram()函数,你可以用图形的方式展示该相关系数矩阵corrgram()函数的格式如下:

corrgram(x, order=, panel=, text.panel=, diag.panel=)

# x是一行一个观测的数据框。当order=TRUE时,相关矩阵将使用主成分分析法对变量重排序,这将使得二元变量的关系模式更为明显。选项 panel 设定非对角线面板使用的元素类型。你可以通过选项 lower.panel upper.panel来分别设置主对角线下方和上方的元素类型,本例中设置主对角线上方使用印象的深度来表示相关性大小,设置主对角线下方使用饼图的填充比例来表示相关性大小。而text.paneldiag.panel选项控制着主对角线元素类型,本例中设置主对角线的元素类型显示输出变量名。可用的panel值如下:

corrgram()函数的panel选项

 

install.packages("corrgram")  #这个包下载的有点慢

library(corrgram)

corrgram(mtcars, order=TRUE, lower.panel=panel.shade,  upper.panel=panel.pie, text.panel=panel.txt,main="Corrgram of mtcars intercorrelations")

 

结果分析:我们先从下三角单元格(在主对角线下方的单元格)开始解释这幅图形。默认地,蓝色和从左下指向右上的斜杠表示单元格中的两个变量呈正相关。反过来,红色和从左上指向右下的斜杠表示变量呈负相关。色彩越深,饱和度越高,说明变量相关性越大。相关性接近于0的单元格基本无色。本图为了将有相似相关模式的变量聚集在一起,对矩阵的行和列都重新进行了排序(使用主成分法)。从图中含阴影的单元格中可以看到,gearamdratmpg相互间呈正相关,wtdisphpcarb相互间也呈正相关。但第一组变量与第二组变量呈负相关。你还可以看到carbamvsgearvsam以及dratqsec四组变量间的相关性很弱。上三角单元格用饼图展示了相同的信息。颜色的功能同上,但相关性大小由被填充的饼图块的大小来展示。正相关性将从12点钟处开始顺时针填充饼图,而负相关性则逆时针方向填充饼图。

1.2  改变其中的参数,输出另外一个可视化效果。

library(corrgram)

corrgram(mtcars, order=TRUE, lower.panel=panel.ellipse,

         upper.panel=panel.pts, text.panel=panel.txt,

         diag.panel=panel.minmax,

         main="Corrgram of mtcars data using scatter plots

 and ellipses")

 结果分析:我们在下三角区域使用平滑拟合曲线和置信椭圆,上三角区域使用散点图。主对角面板包含变量最小和最大值。矩阵的行和列利用主成分分析法进行了重排序。为何上三角的散点图看起来怪怪的?是因为绘制的散点图限制了一些变量的可用值。例如,挡位数gear必须取345,汽缸数cyl必须取46或者8am(传动类型)和vsV/S)都是二值型。因此上三角区域的散点图看起来很奇怪。

1.3  针对例1,我们也可以自定义颜色:

cols <- colorRampPalette(c("darkgoldenrod4", "burlywood1",

                           "darkkhaki", "darkgreen"))

corrgram(mtcars, order=TRUE, col.regions=cols,

         lower.panel=panel.shade,

         upper.panel=panel.pie, text.panel=panel.txt,

         main="A Corrgram (or Horse) of a Different Color")

 

posted @ 2021-08-10 16:41  zhang-X  阅读(446)  评论(0)    收藏  举报