On Mon, Feb 2, 2009 at 2:16 PM, Paulo Grahl <pgr...@gmail.com> wrote: > Dear list members, > > Does anyone know how to use rm() to remove only variables but not > declared functions from the environment ? > I understand I could name all the functions with, let's say > "f_something", make sure that all variables do not start with "f_" and > then remove all BUT objects starting with "f_". > However, I have already defined all the functions and it would be > troublesome to change all of them to a new name. > > Any hint ? > Thanks > > Paulo Gustavo Grahl, CFA >
[Note to Paulo:I changed the code slightly: defining Nonfunctions separately messed things up.] Hi Paulo, The following should do it. test<-function(x)x^2 test2<-5 test3<-77 ls() rm(list=ls()[ sapply(ls(), function(x){ class(get(x))!="function" }) ]) ls() Regards, Gustaf -- Gustaf Rydevik, M.Sci. tel: +46(0)703 051 451 address:Essingetorget 40,112 66 Stockholm, SE skype:gustaf_rydevik ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.