如何使 Tidyverse 中的自定义函数更具可读性? [英] How to make custom function in Tidyverse more readable?

查看:26
本文介绍了如何使 Tidyverse 中的自定义函数更具可读性?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个 data.frame 包含不同的变量,需要使用不同的度量进行汇总.

I have a data.frame with different variables that needs to be summarised with different measures.

我正在寻找一个简单易读的等价物,

I'm looking for a easy readable equivalent of,

baseline_table <- function(data,var) {
        
        data %>% 
                group_by(Species) %>% 
                summarise(
                        !!sym(paste(var, "_mean", sep = "")) := !!sym(var) %>% mean(na.rm = TRUE),
                        !!sym(paste(var, "_sd", sep = ""))   := !!sym(var) %>% sd(na.rm = TRUE)
                )
        
}

iris %>% 
        baseline_table(var = "Sepal.Length")

推荐答案

您可以使用 glue 语法使其更具可读性.

You can use glue syntax to make it more readable.

baseline_table <- function(data, var) {
        
        data %>% 
                group_by(Species) %>% 
                summarise(
                        "{{var}}_mean" := mean({{ var }}, na.rm = TRUE),
                        "{{var}}_sd"   := sd({{ var }}, na.rm = TRUE)
                )
        
}

iris %>% 
        baseline_table(var = Sepal.Length)

这篇关于如何使 Tidyverse 中的自定义函数更具可读性?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆