Sim, se saise um NA, um Null seria perfeito. Eu estava sugerindo no fórum oficial dos pacotes uma forma mais amigável de testar um vetor ou lista de nomes de forma mais simples. Agora com exemplos acho que consigo propor algo mais amigável e razoável. Mas na pagina do try tinha uma menção ao trycatch, mas eu não consegui usar de forma eficiente. Daquele jeito ficou bem legal.
Bem agradeço novamente a ajuda e comentários de todos :) Em 10 de maio de 2013 15:51, David Valentim Dias <[email protected]>escreveu: > Bom que o problema se resolveu com os exemplos acima dos colegas da lista. > Checagem de erro no R fora da biblioteca padrão é um caos mesmo. Poderia > muito bem retornar algo diferente de string (NA por exemplo) e você ia > checar e substituir como foi sugerido acima. > > Abraços > > > Em 10 de maio de 2013 15:34, Augusto Ribas <[email protected]> escreveu: > > # >> sapply(teste, function(x)tryCatch(log(x), error = >> function(...)"verificar")) >> # >> >> Isso era o que eu queria :), funcionou perfeitamente. >> >> David, o taxisize retorna uma mensagem de erro que é uma String. Por >> exemplo eu guardava os resultados numa matriz de characters, onde uma >> coluna é o nome que usei para fazer a busca, a resposta quando da certo são >> o nome sugerido, um score que é referente a se o nome não esta >> desatualiado, se tem erro de digitação, se não mudou que são as coisas que >> eu guardo. >> >> Ai usando o try() tava ficando uma mensagem enorme nas células, ai no r >> so imprimia 1 coluna por vez, ai eu queria que ele deixa-se uma palavra >> menor so para facilitar a visualização, ja que se não deu certo eu quero >> verificar caso a caso mesmo, ou posso tentar denovo so com o que falhou, >> porque existem muitos erros de nome de especie muito antigas, que mudou, >> essas coisas que não é para dar certo mesmo >> Mas acho que usando esse tryCatch ai dar certo agora. >> Eu imaginei que seria melhor deixar um exemplo mais simples, que produzia >> o mesmo efeito aqui, o efeito é mais ou menos o mesmo. >> >> Mas muito obrigado pelas resposta. me ajudaram muito. >> >> Abraços >> Augusto Ribas >> >> >> Em 10 de maio de 2013 14:54, Henrique Dallazuanna <[email protected]>escreveu: >> >> Tente assim: >>> >>> sapply(teste, function(x)tryCatch(log(x), error = >>> function(...)"verificar")) >>> >>> >>> 2013/5/9 Augusto Ribas <[email protected]> >>> >>>> Ola, eu gostaria de saber, se tem como eu mudar de forma simples a >>>> mensagem de erro que o R envia ao tentar usar uma função e receber um >>>> erro. >>>> >>>> Por exemplo: >>>> >>>> #Imagine que eu tenho a seguinte lista, e precise aplicar uma função >>>> >>>> #Exemplo de lista de dados >>>> teste<-list(2, "a", 1 , 10 , "b") >>>> teste >>>> >>>> #Preparando um lugar para guardar os resultados >>>> saida<-list() >>>> >>>> #Se eu tentar fazer um loop com for, ele vai parar >>>> #quando chegar a letra, porque nao da para fazer o log de caracter >>>> for( i in 1:length(teste)) { >>>> saida[i] <-log(teste[i]) >>>> } >>>> >>>> #nesse caso o loop para e eu nao tenho a saida que desejo >>>> saida >>>> >>>> #Mas então eu tentei usar a função try >>>> #minha ideia era que se der para calcular, calcule >>>> #senão de uma msg de erro e siga em frente pro proximo >>>> >>>> for( i in 1:length(teste)) { >>>> saida[[i]] <-try( log(teste[[i]][1]) ) >>>> } >>>> >>>> #agora eu tenho minha saida, com erro onde não deu para calcular, isso >>>> que eu queria >>>> saida >>>> >>>> #o que eu queria saber se é possivel fazer o seguinte >>>> #se der certo, execute a função, senão imprima o erro que eu falar >>>> #nesse caso eu gostaria de uma saida desse tipo: >>>> >>>> saida.exemplo<-list(0.6931472,"Verificar",0,2.302585,"Verificar") >>>> saida.exemplo >>>> >>>> ############################################################# >>>> >>>> Esse exemplo eu peguei na função try. >>>> >>>> Mas na verdade eu estou usando o pacote taxize >>>> (http://ropensci.github.io/taxize_/) >>>> para conferir nomes de especies, e para conferir listas grandes, as >>>> vezes para quando a conexão com a internet falha, ou o nome da especie >>>> não é encontrado, resumindo eu queria saber se existe uma forma de >>>> falar pro R, fazer isso (minha função), se der erro retorne isso >>>> (minha mensagem). >>>> >>>> Agradeço desde ja a atenção. >>>> >>>> -- >>>> Grato >>>> Augusto C. A. Ribas >>>> >>>> Site Pessoal: http://recologia.com.br/ >>>> Github: https://github.com/Squiercg >>>> Lattes: http://lattes.cnpq.br/7355685961127056 >>>> _______________________________________________ >>>> 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. >>>> >>> >>> >>> >>> -- >>> Henrique Dallazuanna >>> Curitiba-Paraná-Brasil >>> 25° 25' 40" S 49° 16' 22" O >>> >>> _______________________________________________ >>> 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. >>> >> >> >> >> -- >> Grato >> Augusto C. A. Ribas >> >> Site Pessoal: http://recologia.com.br/<http://augustoribas.heliohost.org> >> Github: https://github.com/Squiercg >> Lattes: http://lattes.cnpq.br/7355685961127056 >> >> _______________________________________________ >> 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. >> > > > > -- > Biostatistician Consultant and Cogito Programmer's > http://www.facebook.com/CogitoConsultoriaEstatistica > Curriculum: http://lattes.cnpq.br/7541377569511492 > > _______________________________________________ > 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. > -- Grato Augusto C. A. Ribas Site Pessoal: http://recologia.com.br/ <http://augustoribas.heliohost.org> Github: https://github.com/Squiercg Lattes: http://lattes.cnpq.br/7355685961127056
_______________________________________________ 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.
