# NOT RUN {
some.data <- data.frame(x=rnorm(n=100))
some.data <- within(some.data,{
f <- factor(rep(1:4,each=25),labels=letters[1:4])
g <- factor(rep(1:5,each=4,5),labels=LETTERS[1:5])
y <- x + rep(1:4,each=25) + 0.75*rep(1:5,each=4,5)
})
some.grouped.data <- Groups(some.data,
~f+g)
group.means <- with(some.grouped.data,
mean(y))
group.means
some.grouped.data <- within(some.grouped.data,{
y.cent <- y - mean(y)
},recombine=FALSE)
group.means <- with(some.grouped.data,
round(mean(y.cent),15))
group.means
str(group.means)
with(some.grouped.data,
c(Centered=round(mean(y.cent),15),
Uncentered=mean(y)))
some.data.ungrouped <- recombine(some.grouped.data)
str(some.data.ungrouped)
some.dataset <- as.data.set(some.data)
some.grouped.dataset <- Groups(some.dataset,~f+g)
with(some.grouped.dataset,
c(Mean=mean(y),
Variance=var(y)))
with(Groups(some.data,~f+g),mean(y))
some.data <- within(Groups(some.data,~f+g),{
y.cent <- y - mean(y)
},recombine=TRUE)
round(with(some.data,
tapply(y.cent,list(g,f),
mean,na.rm=TRUE)),15)
some.data <- withinGroups(some.data,~f+g,{
y.cent <- y - mean(y)
})
round(with(some.data,
tapply(y.cent,list(g,f),
mean)),15)
withGroups(some.data,~f+g,{
round(mean(y.cent),15)
})
# }
Run the code above in your browser using DataLab