[英]How to Pass a Column Name into a function that uses summary in R
我想知道如何編寫一個函數來總結基於函數參數的值。
這是我想編寫的函數:
iris %>%
group_by(Species) %>%
summarize(mean = mean(Petal.Length))
find_mean <- function(search_term){
iris %>%
group_by(Species) %>%
summarize(mean = mean(search_term))
}
find_mean("Petal.Length")
謝謝!
使用get
find_mean <- function(search_term){
iris %>%
group_by(Species) %>%
summarize(mean = mean(get(search_term)))
}
... 或者您可以使用 bang-bang 運算符!!as.name()
,正如我在這篇文章中學到的那樣。
find_mean <- function(search_term){
iris |>
dplyr::group_by(Species) |>
dplyr::summarize(mean = mean(!!as.name(search_term)))
}
find_mean("Petal.Length")
#> # A tibble: 3 × 2
#> Species mean
#> <fct> <dbl>
#> 1 setosa 1.46
#> 2 versicolor 4.26
#> 3 virginica 5.55
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.