
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