[R-br] Fwd: Enc: model.matrix() (continuação)

ASANTOS alexandresantosbr em yahoo.com.br
Quarta Abril 22 23:43:41 BRT 2015


Walmes,

      Tenho mais uma questão sobre o problema ainda, pois no caso de eu 
ter 30 níveis com 10 repetições e emprego a estrutura diagonal proposta 
por você, eu sempre estou comparando 1com 2, 2 com 3 ate a enésima 
comparação, teria como eu fazer algo para comparar o nível 1 com todos 
os outros, o nível 2 com todos os outros assim sucessivamente, pois no 
meu exemplo proposto tenho:

## Criando 30 níveis com 10 repetições
trat<-gl(30,10)

## Se \beta = C\mu então \mu = C^{-1}\beta.
## Número de níveis do fator.
k <- 75

## Row 1.
r1 <- rep(1/k, k)

## Matriz diagonal.
D <- diag(k-1)

## Positive ones.
po <- cbind(D, 0)

## Negative ones.
no <- cbind(0, -D)

## Matriz de contrastes "diferenças em sequência".
C <- rbind(r1, po+no)
rownames(C) <- c("mu", paste0(1:(k-1), "-", 2:k))
C

contrasts(trat)<-t(C[-1,]) ## Retira o col do intercepto, deixa k-1.

trat.ortho <- model.matrix(~trat)[, -1]

head(trat.ortho)

Que não equivale a uma comparação completa entre todos os níveis, 
poderia me ajudar a conseguir a fazer isso?

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
======================================================================






On 30/03/2015 15:59, walmes . wrote:
> Alexandre,
>
> Daria para fazer com um for(), mas aí percebi a estrutura diagonal de 
> 1's positivo e 1's negativos e achei mais fácil somar matrizes 
> diagonais. O CMR esclarece melhor o ponto.
>
> ## Número de níveis do fator.
> k <- 5
>
> ## Row 1.
> r1 <- rep(1/k, k)
>
> ## Matriz diagonal.
> D <- diag(k-1)
>
> ## Positive ones.
> po <- cbind(D, 0)
>
> ## Negative ones.
> no <- cbind(0, -D)
>
> ## Matriz de contrastes "diferenças em sequência".
> C <- rbind(r1, po+no)
> rownames(C) <- c("mu", paste0(1:(k-1), "-", 2:k))
> C
>
> À disposição.
> Walmes.
>
>
>
> _______________________________________________
> 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/20150422/9c3534fa/attachment.html>


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