[R-br] Criar função no R com if e for

Rodolfo Souza rodolfomssouza em gmail.com
Segunda Setembro 29 18:47:52 BRT 2014


Olá pessoal, gostaria mais uma vez da ajuda de vocês.

Eu estou precisando criar uma função no R que tem três condições e após
testar todas as condições o programa me retorne um resultado na forma de
vetor para cada valor (input) na função.
Segue o código que consegui fazer até agora:

x=c(-5,-4,-3,-2,-1,0,1,2,3,4,5);x

fr=function(x){
  r=numeric(length = length(x));
  for(i in seq(along=x)){
    if(x<-3){r[i]=0}
    else if(x>=-3 && x<=2){r[i]=3*x}
    else{r[i]=1}
  }
  return(r)
}

rs=fr(x);rs

O resultado saí: 0 0 0 0 0 0 0 0 0 0 0

Se eu tenho só um valor no vetor e não utilizo o "for" consigo resolver,
mas se o vetor tem mais de um valor dá erro.

Desde já grato pela atenção/ajuda.

-- 
Rodolfo Marcondes Silva Souza
Engenheiro Agrônomo
Mestre em Produção Vegetal - UFRPE/UAST
Doutorando em Tecnologias Energéticas e Nucleares - UFPE/DEN
Currículo Lattes <http://lattes.cnpq.br/4486320338778858>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20140929/cd4d2acb/attachment.html>


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