Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.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
如何将forward pipe操作符与匿名函数组合_R_Function_Anonymous Function_Chaining_Magrittr - Fatal编程技术网

如何将forward pipe操作符与匿名函数组合

如何将forward pipe操作符与匿名函数组合,r,function,anonymous-function,chaining,magrittr,R,Function,Anonymous Function,Chaining,Magrittr,是否可以将forward pipe操作符与匿名函数相结合? 如果是这样的话,我该怎么做呢 我得到的基本思想是以顺序的方式传递参数,让函数执行。如下所示,首先匿名函数计算和,然后将其传递给阶乘函数 我该怎么做呢 这就是我试图使用forward pipe操作符执行的操作- calculate <- function(func,d) { func(d) } factorial(calculate(function(x){x+1},7)) # function x is the a

是否可以将forward pipe操作符与匿名函数相结合? 如果是这样的话,我该怎么做呢

我得到的基本思想是以顺序的方式传递参数,让函数执行。如下所示,首先匿名函数计算和,然后将其传递给阶乘函数

我该怎么做呢 这就是我试图使用forward pipe操作符执行的操作-

calculate <- function(func,d)
 {
   func(d)
   }

factorial(calculate(function(x){x+1},7)) # function x is the anonymous function
7 %>% calculate(function(x){x+1}) %>% fact()
预期结果是40320,但结果是

funcd中出错:找不到函数func

另一个选项是使用name显式调用calculate的参数

7 %>% calculate(func=function(x){x+1}) %>% factorial()
另一个选项是使用name显式调用calculate的参数

7 %>% calculate(func=function(x){x+1}) %>% factorial()
使用%>%时,案例7中的参数将作为前面函数的第一个参数插入。因此,7%>%calculatefunctionx{x+1}实际上计算为calculate7,functionx{x+1}

你可以用它来解决这个问题

7 %>% calculate(function(x){x+1}, .) %>% factorial()
或使用命名参数,因为7与其余参数匹配

使用%>%时,案例7中的参数将作为前面函数的第一个参数插入。因此,7%>%calculatefunctionx{x+1}实际上计算为calculate7,functionx{x+1}

你可以用它来解决这个问题

7 %>% calculate(function(x){x+1}, .) %>% factorial()
或使用命名参数,因为7与其余参数匹配