[R] lapply and boxplots with variable names
Phil Spector
spector at stat.berkeley.edu
Tue Jun 22 19:13:34 CEST 2010
Shawn -
Does this example help? (Please don't use cbind when creating
a data frame, since it first creates a matrix, which means everything
must be of the same mode.)
> var1 = rnorm(1000)
> var2 = rnorm(1000)
> TimePeriod = rep((LETTERS[1:4]), 250)
> my.data = data.frame(var1,var2,TimePeriod)
> lapply(names(my.data)[1:2],
+ function(y)boxplot(formula(paste(y,'TimePeriod',sep='~')),
+ main=y,data=my.data))
- Phil Spector
Statistical Computing Facility
Department of Statistics
UC Berkeley
spector at stat.berkeley.edu
On Tue, 22 Jun 2010, Shawn Morrison wrote:
> Hi all,
>
> I have a dataset with several variables, each of which is a separate column.
> For each variable, I want to produce a boxplot and include the name of the
> variable (ie, column name) on each plot.
>
> I have included a sample dataset below. Can someone tell me where I am going
> wrong?
>
> Thank you for your help,
> Shawn Morrison
>
> # Generate a sample dataset
> var1 = rnorm(1000)
> var2 = rnorm(1000)
> TimePeriod = rep((LETTERS[1:4]), 250)
>
> my.data = as.data.frame(cbind(var1, var2, TimePeriod)); summary(my.data)
> attach(my.data)
>
> # Create box plots for var1 and var2 using TimePeriod on the x-axis
> lapply(my.data[,1:2], function(y) {
> boxplot(y~TimePeriod,
> main = y
> data = my.data)
> })
>
> ______________________________________________
> 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