11.6 Working With Many Variables


# Table 11.1: Correlation matrix as table
library(StatDA)
data(chorizon)
x=chorizon[,c("Ca","Cu","Mg","Na","P","Sr","Zn")]
round(cor(log10(x)),2)
round(cor(log10(x),method="spearman"),2)

write.csv(round(cor(log10(x)),2),file="tab-11-1a.csv")
write.csv(round(cor(log10(x),method="spearman"),2),file="tab-11-1b.csv")

# Table 11.2: Correlation matrix as table with significance tests
library(StatDA)
data(chorizon)
x=chorizon[,c("Ca","Cu","Mg","Na","P","Sr","Zn")]

cP=cor.sign(log10(x))
cS=cor.sign(log10(x),method="spearman")

sink(file="tab-11-2a.csv")
cP
sink()
sink(file="tab-11-2b.csv")
cS
sink()

# Tab.11.3: Robust correlation matrix
library(StatDA)
data(chorizon)
x=chorizon[,c("Ca","Cu","Mg","Na","P","Sr","Zn")]

x.rob=covMcd(log10(x),cor=T)$cor
dimnames(x.rob)=list(dimnames(x)[[2]],dimnames(x)[[2]])

write.csv(round(x.rob,2),file="tab-11-3.csv")

# Fig.11.4.: Plot Robust and Pearson correlation matrix
library(StatDA)
data(chorizon)

x=chorizon[,c("Ca","Cu","Mg","Na","P","Sr","Zn")]


pdf("fig-11-4.pdf",width=7,height=7)

par(mfrow=c(1,1),mar=c(4,4,2,0))

R=covMcd(log10(x),cor=T)$cor
P=cor(log10(x))
CorCompare(R,P,labels1=dimnames(x)[[2]],labels2=dimnames(x)[[2]],
method1="Robust",method2="Pearson",ndigits=2, cex.label=1.2)

dev.off()