Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/66.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_Arguments_Parameter Passing - Fatal编程技术网

R 为什么可以';我们不能绕着“…”转一圈吗?

R 为什么可以';我们不能绕着“…”转一圈吗?,r,function,arguments,parameter-passing,R,Function,Arguments,Parameter Passing,为什么下面的方法不起作用 f = function(...) for (i in ...) print(i) f(1:3) # Error in f(1:3) : '...' used in an incorrect context 虽然这工作很好 f = function(...) for (i in 1:length(...)) print(...[i]) f(1:3) # [1] 1 # [1] 2 # [1] 3 它不起作用,因为在解释代码中无法访问对象类型。您需要将对象捕获为列表,

为什么下面的方法不起作用

f = function(...) for (i in ...) print(i)
f(1:3)
# Error in f(1:3) : '...' used in an incorrect context
虽然这工作很好

f = function(...) for (i in 1:length(...)) print(...[i])
f(1:3)
# [1] 1
# [1] 2
# [1] 3

它不起作用,因为在解释代码中无法访问对象类型。您需要将对象捕获为列表,如nongkrong所示:

for(i in list(...))

查看R手册

您也可以将其包装在
c
中,例如
c(…)
@Remi.b作为旁注,您实际上可以访问
..
的特定元素,如
.1
.2
等。对于循环来说,这不是非常有用,但你会看到它不时被用作获取特定项目的快捷方式。@joran-nifty,这在
?保留
中有记录,供那些想知道的人使用。