我有一个多列数据,可以分为两类:土地利用和水质。
我只想分析水质变量和土地利用变量之间的相关性,而不存在土地利用变量之间的相关性和质量变量之间的相关性。
我正在使用package ()先锋方法,但是我不知道我如何能够忽略类别之间的相关性。
土地利用=蔬菜,湿,干,水
水质= OD、DBO、DQO
library(ggplot2)
library(dplyr)
library(corrplot)
veg<-c(1,2,3,2.3,4.1)
wet<-c(2,2.3,1.9,2.5,2.2)
dry<-c(5,5.1,6.9,4.3,5.3)
water<-c(0.69,0.75,0.81,0.82,0.82)
coli<-c(10,11,12,13,9.7)
OD<-c(1,3,2.5,2.7,1.8)
DBO<-c(7,8,9,6.5,8)
DQO<-c(3.5,4,4.1,3,2)
#landuse=veg, wet, dry, water
#quality water = OD, DBO, DQO
data_land<-data.frame(veg, wet, dry, water, OD, DBO, DQO)
correl<-corrplot(cor(as.matrix(data_land),method = "spearman"),
method = "color",
tl.cex = 0.9,
number.cex = 0.95,
addCoef.col = "black")

例如,我不希望计算DQO和DBO之间的相关性,因为它们是质量参数。我也不想计算蔬菜和干草之间的相关性,因为它们是土地利用类,例如。
发布于 2021-07-01 00:07:06
在调用cor时,您可以通过选择列来计算土地和水变量之间的Spearman相关性。函数cor也可以接受第二个矩阵来计算相关性,因此您可以计算“土地利用”矩阵(第1-4列)和“水质”矩阵(第5-7列)之间的相关性:
my_cor <- cor(data_land[, 1:4],
data_land[, 5:7],
method = "spearman")
corrplot(my_cor,
method = "color",
tl.cex = 0.9,
number.cex = 0.95,
addCoef.col = "black")图

如果您想要一个平方相关图,在不想显示相关性的空空间中,您可以尝试像以前一样计算相关性,将要隐藏的相关结果设置为NA,然后在corrplot中将na.label设置为空空间。
my_cor <- cor(data_land, method = "spearman")
my_cor[1:4, 1:4] <- NA
my_cor[5:7, 5:7] <- NA
corrplot(my_cor,
na.label = " ",
method = "color",
tl.cex = 0.9,
number.cex = 0.95,
addCoef.col = "black")https://stackoverflow.com/questions/68198248
复制相似问题