[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:14:27 BRT 2012
Pessoal,
Desculpem, a anterior fornece uma matriz nula da dimensão de 'm',
acabei de observar.
A correta é essa:
# 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 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:11, Jose Claudio Faria
<joseclaudio.faria em gmail.com> escreveu:
> 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