[R] Fwd: Calculating group means

Bert Gunter gunter.berton at gene.com
Tue Dec 24 08:28:08 CET 2013


Jim:

Did you forget about with() ?

Instead of:

 by(lbtdat$latency,list(lbtdat$subject,
  lbtdat$condition,lbtdat$state),mean)

##do

with(ibtdat,by(latency,list(subject,condition,state),mean))


Bert Gunter

"Data is not information. Information is not knowledge. And knowledge
is certainly not wisdom."
H. Gilbert Welch




On Mon, Dec 23, 2013 at 6:37 PM, Jim Lemon <jim at bitwrit.com.au> wrote:
> On 12/23/2013 11:31 PM, Laura Bethan Thomas [lbt1] wrote:
>>>
>>> Hi All,
>>>
>>> Sorry for what I imagine is quite a basic question. I have been trying to
>>> do is create latency averages for each state (1-8) for each participant
>>> (n=13) in each condition (1-10). I'm not sure what function I would need, or
>>> what the most efficient ay of calculating this would be. If you have any
>>> help with that I would be very grateful.
>>>
>>> structure(list(subject = c(1L, 1L, 1L, 1L, 1L, 1L), conditionNo = c(1L,
>>> 1L, 1L, 1L, 1L, 1L), state = c(5L, 8L, 7L, 8L, 1L, 7L), latency = c(869L,
>>> 864L, 1004L, 801L, 611L, 679L)), .Names = c("subject", "conditionNo",
>>> "state", "latency"), row.names = 3:8, class = "data.frame")
>>>
> Hi Laura,
> You can do it like this:
>
> # make up enough data to do the calculation
> lbtdat<-data.frame(subject=rep(1:13,each=160),
>  condition=rep(rep(rep(1:10,each=8),2),13),
>  state=rep(rep(1:8,20),13),
>  latency=sample(600:1100,2080,TRUE))
> by(lbtdat$latency,list(lbtdat$subject,
>  lbtdat$condition,lbtdat$state),mean)
>
> but you are going to get a rather long list of means.
>
> Jim
>
> ______________________________________________
> 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