[R] Boxplot of multiple vectors with different lengths

William Dunlap wdunlap at tibco.com
Tue Dec 13 17:36:11 CET 2011


> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of Trevor Carey-
> Smith
> Sent: Monday, December 12, 2011 4:22 PM
> To: r-help at r-project.org
> Subject: Re: [R] Boxplot of multiple vectors with different lengths
> 
> On 12/13/2011 12:14 PM, Ryan Utz wrote:
> > My vectors names are neatly stored in a character vector of their own. This
> > happens based on how they were imported. So, say I have vectors a, b and c,
> > all with numeric-only contents. Then I have another vector, say z, that
> > looks like this:
> >
> > z<-c("a","b","c")
> >
> > Is there really no way to tell boxplot to plot the contents of a, b and c
> > while only referencing z?!
> 
> here is one solution if I understand your requirement:
> 
> aa <- rnorm(20)
> bb <- runif(30)
> cc <- rexp(40)
> z <- c("aa","bb","cc")
> l <- lapply(z,get)
> boxplot(l)
> 
> Although as Sarah said, this will fail if you use 'c' as a variable name
> as the list would then contain the function c() rather than the variable
> you previously defined.

That is why my almost identical suggestion added the
argument envir=environment() to the lapply command.
It makes get() look in the caller-of-lapply's environment
first so it picks up the local c.

Bill Dunlap
Spotfire, TIBCO Software
wdunlap tibco.com 

> 
> Regards,
> Trevor
> 
> > Why is this so difficult?? Again, this is part
> > of an automated process, so the number of incoming data sets, etc. will
> > vary, which is why I'm seeking a solution this way.
> >
> >
> >
> > On Mon, Dec 12, 2011 at 4:09 PM, Vining, Kelly<Kelly.Vining at oregonstate.edu
> >> wrote:
> >
> >> Ryan,
> >> Do you necessarily have to use "list"? Have you tried the usecols=TRUE
> >> option in boxplot?
> >>
> >> Cheers,
> >> --Kelly V.
> >>
> >> -----Original Message-----
> >> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
> >> On Behalf Of Ryan Utz
> >> Sent: Monday, December 12, 2011 1:24 PM
> >> To: r-help at r-project.org
> >> Subject: [R] Boxplot of multiple vectors with different lengths
> >>
> >> Hello,
> >>
> >> I'm attempting to write a code that automatically imports data from
> >> different files (with different lengths-just one variable) and makes tidy
> >> box plots for comparison. I can successfully import the data and create a
> >> list of the vectors I want to compare. But I cannot, for the life of me,
> >> figure out how to generate box plots using the "list" option. Suppose these
> >> are my data:
> >>
> >> a<-c(1,1,1,1,2,3,2,1,2,3)
> >> b<-c(2,2,2,3,4,4,4,3,3)
> >> c<-c(4,3,3,2,3,4,5,3,3,3,4,4,5,6,3,2)
> >>
> >> And this is my list of the vectors I'm interested in:
> >>
> >>   z<-list(c("a","b","c"))
> >>
> >> Well, this successfully generates the kind of boxplot I want:
> >>
> >> boxplot(a,b,c)
> >>
> >> But this does not:
> >>
> >> boxplot(z)
> >>
> >> Because I'm trying to write an automatic plot-generator as the amount of
> >> data I'm working with will typically vary, I need to write this to handle
> >> any number of data vectors.
> >>
> >> I've tried every imaginable means of tweaking the name of "z", with zero
> >> success. And I've scoured the help pages for about 45 minutes (just to
> >> preempt any "read the help" responses). Please help!
> >>
> >> Thanks,
> >> Ryan
> >>
> >> --
> >>
> >> Ryan Utz, Ph.D.
> >> Aquatic Ecologist/STREON Scientist
> >> National Ecological Observatory Network
> >>
> >> Home/Cell: (724) 272-7769
> >> Work: (720) 836-2488
> >>
> >>          [[alternative HTML version deleted]]
> >>
> >> ______________________________________________
> >> R-help at 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.
> >>
> >
> >
> >
> --
> Please consider the environment before printing this email.
> NIWA is the trading name of the National Institute of Water & Atmospheric Research Ltd.
> 
> ______________________________________________
> R-help at 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.



More information about the R-help mailing list