【发布时间】:2015-09-01 20:36:55
【问题描述】:
我想在我的函数中调用dplyr 包中的summarise_,这是我尝试过的,但我对mean 和median 函数有所不同,我的方法有什么问题?
library(dplyr)
df <- data.frame(A=c(1,2,3))
getMean <- function(df, col) {
col <- as.symbol(col)
df %>%
summarise_(Mean = ~mean(col))
}
getMedian <- function(df, col) {
col <- as.symbol(col)
df %>%
summarise_(Median = ~median(col))
}
getMean(df, 'A')
Mean
1 2
getMedian(df, 'A')
Error: object 'A' not found
【问题讨论】:
-
median与mean的处理方式不同的原因是mean(以及sum、min、max、var和sd)summarise操作将它们视为特殊情况,该操作为它们中的每一个调用一个 C++ 快捷方式。您可以找到该函数列表here。