[R-br] Exibição de matriz de correlação dada uma condição

ASANTOS alexandresantosbr em yahoo.com.br
Domingo Agosto 16 23:50:11 BRT 2015


Prezados listeiros,

     No meu CRM abaixo tenho uma matriz de correlação com o valor de p 
na diagonal superior o e valor r de Pearson da diagonal inferior, no 
entanto eu gostaria de exibir uma matriz de correlação apenas com os p 
valores maiores ou igual 0.05 e r maior ou igual a 0.08 isso é possível?

Segue CRM:

require(Hmisc)## Pacote

#Variáveis artificiais
var1<-sort(rnorm(500,1), decreasing = TRUE)
var2<-rnorm(500,10)
var3<-sort(rnorm(500,22))
var4<-sort(rnorm(500,10))
var5<-sort(rnorm(500,0.5), decreasing = TRUE)
var6<-sort(rnorm(500,25), decreasing = TRUE)
var7<-rnorm(500,10)
dados<-cbind(var1,var2,var3,var4,var5,var6,var7)

#Função que dispõem p valor na diagonal superior e r valor na inferior

pn <- function(X){crossprod(!is.na(X))}

cor.prob <- function(X){
     pair.SampSize <- pn(X)
     above1 <- row(pair.SampSize) < col(pair.SampSize)
     pair.df <- pair.SampSize[above1] - 2
     R <- cor(X, use="pair")
     above2 <- row(R) < col(R)
     r2 <- R[above2]^2
     Fstat <- (r2 * pair.df)/(1 - r2)
     R[above2] <- 1 - pf(Fstat, 1, pair.df)
     R
}

#Resultado da matriz
cor.prob(dados)
#

-- 
======================================================================
Alexandre dos Santos
Proteção Florestal
IFMT - Instituto Federal de Educação, Ciência e Tecnologia de Mato Grosso
Campus Cáceres
Caixa Postal 244
Avenida dos Ramires, s/n
Bairro: Distrito Industrial
Cáceres - MT                      CEP: 78.200-000
Fone: (+55) 65 8132-8112 (TIM)   (+55) 65 9686-6970 (VIVO)
e-mails:alexandresantosbr em yahoo.com.br
         alexandre.santos em cas.ifmt.edu.br
Lattes: http://lattes.cnpq.br/1360403201088680
======================================================================



Mais detalhes sobre a lista de discussão R-br