我无法准备使用dplyr
根据下面的数据集的汇总表使用N():同时作为计算其他汇总统计
set.seed(1)
df <- data.frame(rep(sample(c(2012,2016),10, replace = T)),
sample(c('Treat','Control'),10,replace = T),
runif(10,0,1),
runif(10,0,1),
runif(10,0,1))
colnames(df) <- c('Year','Group','V1','V2','V3')
我要计算的平均数,中位数,标准偏差,并计算每个组合Year
和Group
的观测值数量。
我已经成功地使用此代码来获得mean
,median
和sd
:
summary.table = df %>%
group_by(Year, Group) %>%
summarise_all(funs(n(), sd, median, mean))
不过,我不知道如何引进funs()
命令里面的n()
功能。它给了我的计数为V1
,V2
和V3
。这是相当多余的,因为我只想要样本的大小。我曾尝试之前和group_by()
行后引入
mutate(N = n()) %>%
,但它并没有给我我想要的东西。
任何帮助?
编辑:我没有让我的疑问很清楚。问题是代码给了我不需要的列,因为V1
的观察次数对我来说已经足够了。
你可以添加''''()'''''''n''''使代码可行?像这样:''''summarise_all(funs(n(),sd,median,mean))''' – raymkchow
检查https://stackoverflow.com/questions/22801153/dplyr-error-in-n-function-不应该被称为 - 直接看看是否有帮助 – Kevin
@raymkchow我编辑了这个问题。现在很清楚。 –