找回密码
 注册
查看: 6816|回复: 0

R语言中的参数命名和默认值

[复制链接]
发表于 2011-1-22 21:35:12 | 显示全部楼层 |阅读模式
和产生正则序列<页码:10>中提示的一样,如果被调用函数的参数以\name=object"
方式给出,它们可以用任何顺序设置。但是,参数赋值序列可能以未命名的,位置特
异性的方式给出,同时也有可能在这些位置特异性的参数后加上命名参数赋值。
因此,如果有下面方式定义的函数fun1
> fun1 <- function(data, data.frame, graph, limit) {
[函数主体部分忽略]
}
那么函数将会被好几种方式调用,如
> ans <- fun1(d, df, TRUE, 20)
> ans <- fun1(d, df, graph=TRUE, limit=20)
> ans <- fun1(data=d, limit=20, graph=TRUE, data.frame=df)
上面所有的方式是等价的。
许多时候,参数会被设定一些默认值。如果默认值适合你要做的事情,你可以省
略这些参数。例如,函数fun1 用下面的方式定义时
> fun1 <- function(data, data.frame, graph=TRUE, limit=20) { ... }
它可以被如下命令调用
> ans <- fun1(d, df)
这和前面三种情况等价,而
> ans <- fun1(d, df, limit=10)
就改变了一个默认值。
特别说明一下,默认值可以是任何表达式,甚至是函数本身所带有其他参数;它
们没有要求是常数。我们的例子采用常数只是使问题简单容易说明。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|小黑屋|生物统计家园 网站价格

GMT+8, 2024-11-21 23:36 , Processed in 0.033176 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表