让R忽略函数中的参数

时间:2017-01-29 22:55:36

标签: r function

我正在为两种类型的t检验(成对的独立样本)编写函数。该函数接受参数(n1, n2, ttype)n1n2是样本量。 ttype确定t检验是配对(= 1)还是独立(= 2)。

如何在n2缺失或is.na(n2)(即n2= no number in front of it)时让R了解,将输入视为代表ttype = 1,即使存在n2 "忽略" n2

我使用以下代码,但不断收到以下错误消息:

"论证" n2"缺少,没有默认"

if(missing(n2) | is.na(n2)){n2 <- NA; ttype <- 1}

1 个答案:

答案 0 :(得分:1)

如果您使用||而非|,则代码应该有效。 ||它短路,即它从左到右工作,如果左边是FALSE,只评估右手边;但是,|首先评估双方(如果缺少n2会导致错误),然后将它们合并。

if (missing(n2) || is.na(n2)) { n2 <- NA; ttype <- 1 }