Statistical Summaries
Grouped Mean
Summaries by Label
tapply splits a vector by group labels, applies a function to each group, and returns one result per group.
Program
Play the script to add a bonus, split scores by group, and average each group.
grouped_mean.R
group <- c("A", "A", "B", "B")
values <- c(3, 5, 7, 9)
bonus <-
adjusted <- values + bonus
means <- tapply(adjusted, group, mean)
label <- paste(names(means), means, collapse = "; ")
cat(label, "\n", sep = "")
group <- c("A", "A", "B", "B")
values <- c(3, 5, 7, 9)
bonus <-
adjusted <- values + bonus
means <- tapply(adjusted, group, mean)
label <- paste(names(means), means, collapse = "; ")
cat(label, "\n", sep = "")
group <- c("A", "A", "B", "B")
values <- c(3, 5, 7, 9)
bonus <-
adjusted <- values + bonus
means <- tapply(adjusted, group, mean)
label <- paste(names(means), means, collapse = "; ")
cat(label, "\n", sep = "")
tapply
`tapply(values, group, mean)` computes a summary inside each group.
vector recycling
`values + bonus` adds one scalar to every element.
names
`names(means)` returns the group labels carried by the summary.