Try this also:

rm(list=names(which(unlist(eapply(globalenv(), function(a)all(is.na(a) ||
is.null(a)))))))


On Tue, May 19, 2009 at 9:07 AM, Katharina May <may.katharina@googlemail.com
> wrote:

> Thanks Jim, the removal of objects which are NA works perfectly!
>
> For my second problem it didn't express myself correctly:
> I  actually meant objects with rows (attributes?) but no data in it
> but I solved this
> adjusting your approach:
>
> for(object in objects()) if(is.null(dim(get(object))[1]) ||
> dim((get(object)))[1] == 0) rm(list=object)
>
> Thanks a lot!
>
>
> 2009/5/19 Jim Lemon <jim@bitwrit.com.au>:
> > Katharina May wrote:
> >>
> >> Hi,
> >>
> >> how can I remove all empty objects (which are NA or have zero rows)
> >> from my workspace?
> >>
> >>
> >
> > Hi Katharina,
> > To remove objects that are all NA:
> >
> > for(object in objects()) if(all(is.na(get(object)))) rm(list=object)
> >
> > If by "zero rows" you mean objects that do not have a dimension:
> >
> > for(object in objects()) if(is.null(dim(get(object)))) rm(list=object)
> >
> > Jim
> >
> >
>
>
>
> --
> Time flies like an arrow, fruit flies like bananas.
>
> ______________________________________________
> 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.
>



-- 
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O

	[[alternative HTML version deleted]]


