students <- data.frame( names = c( "Bill", "Stacey", "Fred", "Jane", "Sarah" ),
gender = c( "M", "F", "M", "F", "F" ),
age = c( "10-12", "10-12", "13-15", "7-9", "16-18" ),
stringsAsFactors = FALSE )
我使用下面的函数为一个变量,但是,它不适用于多个变量.
library(dplyr)
result_dplyr <- students %>%
group_by(gender) %>%
summarise(per_to_tot = n() / nrow(student) * 100)
print(result_dplyr)
所需输出如下所示.
# gender per to tot
# 1: M 40
# 2: F 60
# age
# 1: 7-9 20
# 2: 10-12 40
# 3: 13-15 20
# 4: 16-18 20
适用于多个变量的R代码.