Estoy intentando escribir una función que elimine un objeto si existe. La razón es que quiero deshacerme del mensaje de registro Error: objeto 'arg' no encontrado. He intentado lo siguiente:Escriba una función para eliminar el objeto si existe
ifrm <- function(arg)
{
if(exists(as.character(substitute(arg)))){rm(arg)}
}
Desafortunadamente esto no quita el objeto si es que existe
> ifrm <- function(arg)
+ {
+ if(exists(as.character(substitute(arg)))){rm(arg)}
+ }
> a <- 2
> ifrm(a)
> a
[1] 2
¿Alguna pista de lo que hago mal?
Mejor Albrecht
Esto suena como una cosa posiblemente peligroso. ¿Quieres darnos un poco más de detalles sobre las circunstancias en las que obtienes este error? Puede haber otras formas de tratar su mensaje de error que sean más apropiadas. – Andrie
Estoy de acuerdo con Andrie. Las respuestas proporcionadas harán lo que usted solicitó, pero lo más probable es que lo que realmente debería hacer sea aún más simple. Eche un vistazo a try y trycatch. ¿Qué es lo que estás tratando de hacer que está tratando de procesar objetos inexistentes? –