
Gilbert, se vc quer mesmo usar *for* é só fazer atribuições dentro do loop mesmo. n<-c(87, 108, 80, 25) nx err.m<-matrix(NA, choose(nx,2),1) indice <- 1 for(i in 1:nx) { for(j in 2:nx) { if(i<j){ err.m[indice]<-sqrt((410.35/(n[i]+0.5))+(410.35/(n[j]+0.5))) indice <- indice + 1 } } } Em 1 de dezembro de 2011 09:04, Lucas Petri Damiani <lucaspd16@gmail.com>escreveu:
Para declarar a variável. Se vc tentar rodar o primeiro c(err, sqrt((410.35/(n[i]+0.5))+(410.35/(n[j]+0.5)))) sem declarar err como NULL (ou como qualquer outra coisa) vai aparecer "Erro: objeto 'err' não encontrado".
Abraços, Lucas
2011/12/1 Mauro Sznelwar <sznelwar@uol.com.br>
** Estava olhando esta discussão, queria saber por que precisa colocar este NULL no err<-NULL?
Você pode tentar assim:
n<-c(87, 108, 80, 25) err.m<-matrix(NA, choose(nx,2),1) err.m nx err <- NULL for(i in 1:nx) { for(j in 2:nx) { if(i<j){ err<-c(err, sqrt((410.35/(n[i]+0.5))+(410.35/(n[j]+0.5)))) } } } err.m <- err
Mas existem outras formas para escrever o mesmo código, um pouco mais enxuto:
fun <- function(x,y){sqrt((410.35/(x+0.5))+(410.35/(y+0.5)))} err.m2 <- sapply(n,fun,n)[lower.tri(sapply(n,fun,n))] err.m2
Espero ter ajudado. Abraços, Lucas
2011/11/30 Gilbert Queiroz <gilbert_queiroz@yahoo.com.br>
Pessoal, tenho a seguinte parte de um script que estou desenvolvendo:
n<-c(87, 108, 80, 25) err.m<-matrix(NA, choose(nx,2),1) err.m nx for(i in 1:nx) { for(j in 2:nx) { if(i<j){ err<-sqrt((410.35/(n[i]+0.5))+(410.35/(n[j]+0.5))) print(err) } } }
Informações úteis: nx = 4 (já foi definido em outra parte do script) err.m é uma matriz-coluna (6 x 1)
O quero fazer é colocar os resultados de err dentro da matriz err.m
Como faço isso???
O comando print me mostra que err está calculando o que quero. Mas me interessa colocar os resultados em err.m
Abs.
_______________________________________________ R-br mailing list R-br@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.
_______________________________________________ R-br mailing list R-br@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.