如何在R中创建一个仅显示我的数据子集的散点图矩阵(在区域A,B,C或D中,而不是全部4个聚合)?
我知道tapply()函数允许按子集进行细分。例如:
tapply(data$x, data$y, summary)
...会给我一个每个子集的统计摘要。
这是我的散点图矩阵的脚本。 NEMSIS是我的数据集名称。我想制作第2列到第5列的数据散点图。
#Make scatterplot matrix using gclus package.
install.packages("gclus")
library(gclus)
matrix = NEMSIS[,2:5]
matrix.r = abs(cor(matrix))
matrix.col = dmat.color(matrix.r)
cpairs(matrix, panel.colors=matrix.col, gap=.5, main="Scatterplot Matrix of Times")
关于如何在合并tapply()函数的同时创建散点图矩阵以将绘制的数据限制为子集的任何想法?谢谢!
答案 0 :(得分:3)
您可以使用典型方法对行子集进行子集化;使用which()
很简单。例如,我想要一些mtcars
列的散点图矩阵,但我只对cyl
为4的行感兴趣。
pairs(mtcars[which(mtcars$cyl==4),c('disp','hp','drat')])