Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在r中带有宏(函数)的摘要中找不到对象_R_Function_Dplyr - Fatal编程技术网

在r中带有宏(函数)的摘要中找不到对象

在r中带有宏(函数)的摘要中找不到对象,r,function,dplyr,R,Function,Dplyr,我正在尝试使用函数和dplyr生成宏 我想做的是总结特定变量。在函数中,变量为i。年龄在数据集中 fun<-function(i){ dataset%>%dplyr::summarise(t1=mean(i),t2=sd(i)) } fun(i=age) 有人能帮我知道问题出在哪里吗?我们可以使用{{}操作符来计算传递到函数中的不带引号的列名 library(dplyr) library(rlang) fun<-function(datasset, i){ datase

我正在尝试使用
函数
dplyr
生成宏

我想做的是总结特定变量。在
函数
中,变量为
i
。年龄在
数据集中

fun<-function(i){
dataset%>%dplyr::summarise(t1=mean(i),t2=sd(i))
}
fun(i=age)

有人能帮我知道问题出在哪里吗?

我们可以使用
{{}
操作符来计算传递到函数中的不带引号的列名

library(dplyr)
library(rlang)
fun<-function(datasset, i){
   dataset%>%
        dplyr::summarise(t1=mean({{i}}),
                         t2=sd({{i}})
 }
fun(dataset, age)

注意:最好将数据对象和参数传递给函数

我们可以使用
{{}
操作符来计算传递给函数的不带引号的列名

library(dplyr)
library(rlang)
fun<-function(datasset, i){
   dataset%>%
        dplyr::summarise(t1=mean({{i}}),
                         t2=sd({{i}})
 }
fun(dataset, age)

注意:最好将数据对象和参数传递给函数

真的谢谢!!!然而,在第一个语句中(使用{{}),mean({{i}})可能是正确的。不仅仅是{{i}。正确的?如果没有(),则出现错误。谢谢。由于stackoverflow政策,我不能在10分钟前接受答案。10分钟后,我会接受的。真的谢谢!!!然而,在第一个语句中(使用{{}),mean({{i}})可能是正确的。不仅仅是{{i}。正确的?如果没有(),则出现错误。谢谢。由于stackoverflow政策,我不能在10分钟前接受答案。10分钟后,我会接受的。
fun<-function(dataset, i){
   i <- enquo(i)
   dataset%>%
        dplyr::summarise(t1=mean(!!i),
                         t2=sd(!!i))
 }
fun(dataset, age)