[R-br] Ajuda para evitar um loop com elegância (agora correto)

Jose Claudio Faria joseclaudio.faria em gmail.com
Sábado Abril 14 08:11:02 BRT 2012


Pessoal,

Uma pequena correção (apenas no comentário) para dar mais clareza

m   <- matrix(1:24, ncol=3)
res <- matrix(0, nrow(m), ncol(m))
mg  <- mean(m) # média geral
mc  <- colMeans(m) # média das colunas
mr  <- rowMeans (m) # médias das linhas
for (i in  1:nrow(m))
  for (j in 1:ncol(m))
    res[i,j] <- m[i,j] + mg - mc[j] - mr[i]
res
-- 
///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
Jose Claudio Faria
Estatistica
UESC/DCET/Brasil
joseclaudio.faria at gmail.com
///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\



Em 14 de abril de 2012 08:06, Jose Claudio Faria
<joseclaudio.faria em gmail.com> escreveu:
> Pessoal,
>
> Gostaria de evitar um loop no procedimento abaixo da forma mais
> elegante possível:
>
> # R help
> m   <- matrix(runif(24), ncol=3)
> res <- matrix(0, nrow(m), ncol(m))
> mg  <- mean(m) # média geral
> mc  <- colMeans(m) # média das colunas
> mr  <- rowMeans (m) # médias das variáveis
> for (i in  1:nrow(m))
>  for (j in 1:ncol(m))
>    res[i,j] <- m[i,j] + mg - mc[j] - mr[i]
> res
>
> Toda ajuda é bem vinda...
> --
> ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\
> Jose Claudio Faria
> Estatistica
> UESC/DCET/Brasil
> joseclaudio.faria at gmail.com
> ///\\\///\\\///\\\///\\\///\\\///\\\///\\\///\\\


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