[R-br] Função para criar agrupamento de variáveis em função do valor de p

ASANTOS alexandresantosbr em yahoo.com.br
Segunda Março 28 20:51:04 BRT 2016


Prezados Listeiros,

                Gostaria de uma ajuda do grupo para criação de uma 
função para criação de uma variável dados$groups, em função da 
significância de res$aov.tab$Pr=> 0.05, de maneira que níveis de fatores 
iguais serão fundidos, como no exemplo abaixo onde trat1 e trat2 são 
iguais e vão ficar trat1_trat2, e os não significativos ficam do mesmo 
jeito, sem alteração. O output desejado esta no final do meu CRM, não 
estou conseguindo chegar a resultados satisfatórios com a função ifelse 
(res$aov.tab$Pr=> 0.05) { ... Alguém teria alguma sugestão?

### <code r>
require(vegan)

#Fator
trat <- gl(3, 15, labels = paste("t", 1:3, sep=""))

# Variáveis resposta
set.seed(124)
sp  <- cbind(c(rnorm(10,  5, 0.25), rnorm(35, 5, 0.25)), rnorm(45, 2.5, 
0.25),
              c(rnorm(10, 4.5, 0.25), rnorm(35, 5, 0.25)), rnorm(45, 5, 
0.25))
colnames(sp) <- c("sp1", "sp2", "sp3", "sp4")

#Comparações
contrasts(trat) <- cbind(c(0,1,0),c(0,0,1))
trat_c <- model.matrix(~ trat)[, -1]
trat1_trat2 <- trat_c[, 1]
trat1_trat3 <- trat_c[, 2]

res <- adonis(sp ~ trat1_trat2 + trat1_trat3, method = "euclidean", perm 
= 999)
res

# Tentativa de função
ifelse (res$aov.tab$Pr=> 0.05) {
dados$groups =   ## dificultade aqui para agrupar os fatores não 
significativos              ,
dados$groups = dados$trat
}
# Output desejado
       trat      sp1      sp2      sp3      sp4   groups
  [1,]    1 4.653732 2.490977 4.236323 5.382113   trat1_trat2
  [2,]    1 5.009581 2.254713 4.604529 4.842553   trat1_trat2
  [3,]    1 4.809242 2.391435 4.675318 4.732977   trat1_trat2
  [4,]    1 5.053077 2.483129 4.561690 5.311215   trat1_trat2
  [5,]    1 5.356384 2.745474 4.616074 5.114969   trat1_trat2
  ...
  #



Obrigado,

-- 
======================================================================
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
OrcID: orcid.org/0000-0001-8232-6722
Researchgate: https://www.researchgate.net/profile/Alexandre_Santos10
LinkedIn: https://br.linkedin.com/in/alexandre-dos-santos-87961635
======================================================================



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