[R] rowMean, specify subset of columns within Dataframe?
Charles C. Berry
cberry at tajo.ucsd.edu
Sun Nov 25 22:01:33 CET 2007
On Sun, 25 Nov 2007, aaront wrote:
>
> I would like to calculate the mean of tree leader increment growth over 5
> years (I1 through I5) where each tree is a row and each row has 5 columns.
> So far I have achieved this using rowMeans when all columns are numeric type
> and used in the calculation:
>
> Data1 <- data.frame(cbind(I1 = 3, I2 = c(0,3:1, 2:5,NA), I3
> =c(1:4,NA,5:2),I4=2,I5=3))
> Data1
Try
!sapply( Data1, is.factor )
then
Data_2 <- transform( Data1, I5.factor=factor(I5) )
!sapply( Data_2, is.factor )
then
rowMeans( Data_2[ , !sapply( Data_2, is.factor ) ], na.rm = TRUE )
See
?Subscript
?sapply
HTH,
Chuck
> Data1$mean_5 <- rowMeans(Data1, na.rm =T)
> Data1
>
> My real dataset has many columns including several Factor type. Is it
> possible to specify a range of columns within a data frame using rowMeans
> dims= (say where there is a one
> Factor column called Species leading I1 to I5, and one Factor column called
> Moisture following, so 7 columns total) , or do I either need to extract
> those columns to a new data frame, calculate means, and reattach to the
> original data frame, or use a different function such as apply?
>
> Unfortunately I am fairly new to R and have a difficult time with some
> terminology and concepts in R Help.
>
> --
> View this message in context: http://www.nabble.com/rowMean%2C-specify-subset-of-columns-within-Dataframe--tf4871420.html#a13939204
> Sent from the R help mailing list archive at Nabble.com.
>
> [[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.
>
Charles C. Berry (858) 534-2098
Dept of Family/Preventive Medicine
E mailto:cberry at tajo.ucsd.edu UC San Diego
http://famprevmed.ucsd.edu/faculty/cberry/ La Jolla, San Diego 92093-0901
More information about the R-help
mailing list