[R-br] Exibição de matriz de correlação dada uma condição [RESOLVIDO]
ASANTOS
alexandresantosbr em yahoo.com.br
Terça Setembro 15 10:40:23 BRT 2015
Bom dia Hélio,
Estou rodando a rotina novamente no R 3.1.2 e 3.0.2 em windows e
não estou conseguindo replicar o seu erro,
Abraço,
--
======================================================================
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
======================================================================
Em 15/09/2015 08:57, Hélio Gallo Rocha escreveu:
> Alexandre, bom dia.
>
> Não consegui identificar essa msg de erro, que ocorre após executar a
> ultima linha:
>
> x_hm <- heatmap(cr, Rowv=FALSE, Colv=FALSE, dendrogram="none",col=paleta,
> trace="none", cellnote=xval, notecol="black", notecex=0.8)
>
>
> msg de erro:
> Error in hclustfun(distfun(x)) :
> NA/NaN/Inf em chamada de função externa (argumento 11)
>
> OBS: retirei o ".2" após a função heatmap, poiis com esse dois, não
> rodava.
>
> abraço
>
> Em 14 de setembro de 2015 21:15, ASANTOS [via R-br]
> <ml-node+s2285057n4665047h25 em n4.nabble.com
> <mailto:ml-node+s2285057n4665047h25 em n4.nabble.com>> escreveu:
>
>> Agora sim Hélio,
>>
>> Agora com correlação direta e inversa e com cores, segue CRM:
>>
>> #Pacote
>> require(gplots)
>>
>> #Variáveis artificiais
>> dados<-runif(1000)
>> dados<-(dados*100)+c(1:500, 500:1)
>> dados<-matrix(dados,nrow=100,ncol=10)
>> dados<-as.data.frame(dados)
>> names(dados)<-c("var1",
>> "var2","var3","var4","var5","var6","var7","var8","var9","var10")
>>
>>
>> #Função by Walmes
>> pn <- function(X){crossprod(!is.na <http://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
>> }
>>
>>
>> correla <- round(cor.prob(dados),4)
>>
>>
>> #Função by Helio
>>
>> sig<-0.05## Significância pos
>>
>> rP<-0.50 ## Correlação positiva
>> rN<--0.50## Correlação negativa
>>
>> cor.probC <- function(x){
>>
>> results <- x
>> ifelse(row(x)<
>> col(x),ifelse(x<=sig,NA,x),ifelse(x<=rP&x>=rN,NA,x))
>> }
>>
>> cr <- cor.probC(correla)
>> colnames(cr) <- names(dados)
>> rownames(cr) <- names(dados)
>> cr
>> #
>>
>> #Plota a matriz
>> paleta<- colorRampPalette(c(rgb(0.96,0.96,1), rgb(0.1,0.1,0.9)),
>> space = "rgb")
>> xval <- formatC(cr, format="f", digits=2)
>> x_hm <- heatmap.2(cr, Rowv=FALSE, Colv=FALSE,
>> dendrogram="none",col=paleta,
>> trace="none", cellnote=xval, notecol="black", notecex=0.8)
>> #
>>
>> --
>> ======================================================================
>> 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 <tel:%28%2B55%29%2065%208132-8112> (TIM)(+55) 65 9686-6970 <tel:%28%2B55%29%2065%209686-6970> (VIVO)
>> [hidden email]
>> <http:///user/SendEmail.jtp?type=node&node=4665047&i=0>
>> [hidden email]
>> <http:///user/SendEmail.jtp?type=node&node=4665047&i=1>
>> Lattes:http://lattes.cnpq.br/1360403201088680
>> ======================================================================
>>
>>
>>
>> Em 02/09/2015 22:29, Hélio Gallo Rocha escreveu:
>>>
>>> Alexandre. Estou num celular, mas acho que incluindo o caracter
>>> & no campo relativo a correlação, vai funcionar
>>>
>>> Em 02/09/2015 22:36, "ASANTOS [via R-br]" <[hidden email]
>>> <http:///user/SendEmail.jtp?type=node&node=4665047&i=2>> escreveu:
>>>
>>> Boa noite Helio,
>>>
>>> O problema é que a função some também com variáveis
>>> significantes mas inversamente correlacionadas, se altero
>>> ifelse(x>=0.08,NA,x), tenho o problema inverso. Veja as
>>> alterações que
>>> fiz, também criei uma estrutura de correlação um pouco
>>> melhor nos dados
>>> artificiais. Outro problema para colorir estão sendo os
>>> NA's, mas acho
>>> que estamos chegando lá, segue o CRM:
>>>
>>> #Variáveis artificiais
>>> dados<-runif(1000)
>>> dados<-(dados*100)+c(1:500, 500:1)
>>> dados<-matrix(dados,nrow=100,ncol=10)
>>> dados<-as.data.frame(dados)
>>> names(dados)<-c("var1",
>>> "var2","var3","var4","var5","var6","var7","var8","var9","var10")
>>>
>>>
>>>
>>> #Função by Walmes
>>> pn <- function(X){crossprod(!is.na <http://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
>>> }
>>>
>>>
>>> correla <- round(cor.prob(dados),4)
>>>
>>>
>>> #Função by Helio
>>>
>>> sig<-0.05## Significância
>>> r<-0.30 ## Correlação
>>>
>>> cor.probC <- function(x){
>>>
>>> results <- x
>>> ifelse(row(x)<
>>> col(x),ifelse(x<=sig,NA,x),ifelse(x<=r,NA,x))
>>> }
>>>
>>> cr <- cor.probC(correla)
>>> colnames(cr) <- names(dados)
>>> rownames(cr) <- names(dados)
>>> cr
>>> #
>>>
>>> Abraço,
>>>
>>> --
>>> ======================================================================
>>>
>>> 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: <a moz-do-not-send="true"
>>> href="tel:%28%2B55%29%2065%208132-8112" value="+556581328112
>>> <tel:%2B556581328112>" target="_blank">(+55) 65 8132-8112
>>> <tel:%28%2B55%29%2065%208132-8112> (TIM) <a
>>> moz-do-not-send="true"
>>> href="tel:%28%2B55%29%2065%209686-6970" value="+556596866970
>>> <tel:%2B556596866970>" target="_blank">(+55) 65 9686-6970
>>> <tel:%28%2B55%29%2065%209686-6970> (VIVO)
>>> e-mails:[hidden email]
>>> <http:///user/SendEmail.jtp?type=node&node=4665035&i=0>
>>> [hidden email]
>>> <http:///user/SendEmail.jtp?type=node&node=4665035&i=1>
>>> Lattes: http://lattes.cnpq.br/1360403201088680
>>> ======================================================================
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Em 02/09/2015 12:09, Hélio Gallo Rocha escreveu:
>>> > var1<-sort(rnorm(30,1), decreasing = TRUE)
>>> > var2<-rnorm(30,10)
>>> > var3<-sort(rnorm(30,22))
>>> > var4<-sort(rnorm(30,10))
>>> > var5<-sort(rnorm(30,0.5), decreasing = TRUE)
>>> > var6<-sort(rnorm(30,25), decreasing = TRUE)
>>> > var7<-rnorm(30,10)
>>> > dados<-cbind(var1,var2,var3,var4,var5,var6,var7)
>>>
>>> _______________________________________________
>>> R-br mailing list
>>> [hidden email]
>>> <http:///user/SendEmail.jtp?type=node&node=4665035&i=2>
>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e
>>> forneça código mínimo reproduzível.
>>>
>>>
>>> ------------------------------------------------------------------------
>>> If you reply to this email, your message will be added to
>>> the discussion below:
>>> http://r-br.2285057.n4.nabble.com/R-br-Exibicao-de-matriz-de-correlacao-dada-uma-condicao-tp4664911p4665035.html
>>>
>>> To unsubscribe from R-br, click here.
>>> NAML
>>> <http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> R-br mailing list
>>> [hidden email]
>>> <http:///user/SendEmail.jtp?type=node&node=4665047&i=3>
>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
>>
>
> --
> ======================================================================
> 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 <tel:%28%2B55%29%2065%208132-8112> (TIM)(+55) 65 9686-6970 <tel:%28%2B55%29%2065%209686-6970> (VIVO)
> [hidden email] <http:///user/SendEmail.jtp?type=node&node=4665047&i=4>
> [hidden email] <http:///user/SendEmail.jtp?type=node&node=4665047&i=5>
> Lattes:http://lattes.cnpq.br/1360403201088680
> ======================================================================
>
>
>
>
> _______________________________________________
> R-br mailing list
> [hidden email]
> <http:///user/SendEmail.jtp?type=node&node=4665047&i=6>
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e
> forne�a c�digo m�nimo reproduz�vel.
>
> ------------------------------------------------------------------------
> If you reply to this email, your message will be added to the
> discussion below:
> http://r-br.2285057.n4.nabble.com/R-br-Exibicao-de-matriz-de-correlacao-dada-uma-condicao-RESOLVIDO-tp4665047.html
>
> To unsubscribe from R-br, click here
> <http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=3357982&code=aGVsaW9nYWxsb3JvY2hhQGdtYWlsLmNvbXwzMzU3OTgyfC0xMzQ3NTkwMDY4>.
> NAML
> <http://r-br.2285057.n4.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>
>
>
>
>
> --
> Hélio Gallo Rocha
> IFSULDEMINAS - Câmpus Muzambinho
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forne�a c�digo m�nimo reproduz�vel.
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20150915/7f0b0d3c/attachment-0001.html>
Mais detalhes sobre a lista de discussão R-br