Obrigado, Lucas,
Foi isto mesmo que fiz.
Abs.
________________________________
De: Lucas Barbosa <[email protected]>
Para: [email protected]
Enviadas: Quinta-feira, 1 de Dezembro de 2011 19:33
Assunto: Re: [R-br] Ajuda
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 <[email protected]>
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 <[email protected]>
>
>
>>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 <[email protected]>
>>>
>>>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
>>[email protected]
>>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
>[email protected]
>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
[email protected]
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
[email protected]
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.