[R] Boxplot of multiple vectors with different lengths

Bert Gunter gunter.berton at gene.com
Tue Dec 13 00:41:05 CET 2011


Thomas:

I stand corrected. Thank you.

-- Bert

On Mon, Dec 12, 2011 at 2:21 PM, Thomas Adams <thomas.adams at noaa.gov> wrote:
> Bert,
>
> I may be mistaken, but I thought Ryan wrote "write code that automatically
> imports data from different files (with different lengths-just one
> variable)", so, I was referring to doing something with the data before it
> gets into R. I understand that one should not need to write out data and
> then re-read it in some way. As I said, those more experienced with R will
> probably offer better ideas.
>
> Tom
>
> On Mon, Dec 12, 2011 at 5:05 PM, Bert Gunter <gunter.berton at gene.com> wrote:
>>
>> Sorry -- previous versiuon prematurely sent. Full version is:
>>
>>  Yikes!  You should never have to do this sort of thing (writing stuff
>>  out to files, etc.)
>>
>>  What is wanted, I believe, is ?do.call as in
>>
>>  do.call(boxplot, z)
>>
>>  where z is list(a,b,c)   as Sarah described.
>>
>>  However, I think you might do even better in terms of controlling
>>  options, labels, etc. if you would get the data into standard flat
>>  file format (data frame) as
>>
>> Result     Source
>>  1            a
>>  3           b
>> 2             b
>>  5         c
>> ... etc.
>>
>> (This is easy to do in R and via many packages.)
>> and then use he formula interface in the lattice ?bwplot  function for th
>> eplot.
>>
>> Cheers,
>> Bert
>>
>> >
>> > result
>> >
>> > On Mon, Dec 12, 2011 at 1:43 PM, Thomas Adams <thomas.adams at noaa.gov>
>> > wrote:
>> >> Ryan,
>> >>
>> >> I think you could do what you want by having the vector data written to
>> >> separate files; then create a file containing the individual file
>> >> names. In
>> >> R, read the file containing the list of file names and loop through
>> >> this
>> >> reading in the individual vector files. Maybe this is an inelegant,
>> >> brute
>> >> force approach, but it has worked for me with essentially the same
>> >> problem.
>> >>
>> >> Tom
>> >>
>> >> On Mon, Dec 12, 2011 at 4:24 PM, Ryan Utz <utz.ryan at gmail.com> wrote:
>> >>
>> >>> 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.
>> >>>
>> >>
>> >>
>> >>
>> >> --
>> >>
>> >> Thomas E Adams
>> >> National Weather Service
>> >> Ohio River Forecast Center
>> >> 1901 South State Route 134
>> >> Wilmington, OH 45177
>> >> EMAIL:  thomas.adams at noaa.gov
>> >> VOICE:  937-383-0528
>> >> FAX:    937-383-0033
>> >>
>> >>        [[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.
>> >
>> >
>> >
>> > --
>> >
>> > Bert Gunter
>> > Genentech Nonclinical Biostatistics
>> >
>> > Internal Contact Info:
>> > Phone: 467-7374
>> > Website:
>> >
>> > http://pharmadevelopment.roche.com/index/pdb/pdb-functional-groups/pdb-biostatistics/pdb-ncb-home.htm
>>
>>
>>
>> --
>>
>> Bert Gunter
>> Genentech Nonclinical Biostatistics
>>
>> Internal Contact Info:
>> Phone: 467-7374
>> Website:
>>
>> http://pharmadevelopment.roche.com/index/pdb/pdb-functional-groups/pdb-biostatistics/pdb-ncb-home.htm
>
>
>
>
> --
>
> Thomas E Adams
> National Weather Service
> Ohio River Forecast Center
> 1901 South State Route 134
> Wilmington, OH 45177
>
> EMAIL:	thomas.adams at noaa.gov
>
> VOICE:	937-383-0528
> FAX:	937-383-0033
>
>



-- 

Bert Gunter
Genentech Nonclinical Biostatistics

Internal Contact Info:
Phone: 467-7374
Website:
http://pharmadevelopment.roche.com/index/pdb/pdb-functional-groups/pdb-biostatistics/pdb-ncb-home.htm



More information about the R-help mailing list