0

我在 R 中创建了一个名为 的函数,调用calibrate如下:

calibrate<-function(prior, p1=NULL, p2=NULL, p3=NULL, q13, q23, 
          accuracy=1e-7, sol=4, data, name_col=1, pval_col=2, tier_col=NULL)

在这个函数中发生的第一件事是:

  if(!is.null(tier_col))
  {
    work<-as.data.frame(table(data[tier_col]))

    p1<-work[,2][work[1]==1]
    p2<-work[,2][work[1]==2]
    p3<-work[,2][work[1]==3]
  }

在此之后发生了许多其他事情,但该功能并没有超越这一点。

我正在打的电话是:

calibrate(prior=0.10, q13=3, q23=2, accuracy=1e-7, sol=4, 
      data=read.csv("C:/Users/C191131/Desktop/calibrate_test.csv"),
      name_col=1, pval_col=2, tier_col=3)

其中数据文件有 3 列,一列用于名称,一列用于 pvalue,一列用于层。如您所见,tier_col被设置为 3,然后在进入函数时立即检查它是否为空。

当我拨打电话时,我收到以下错误:

Error in calibrate(prior = 0.1, q13 = 3, q23 = 2, accuracy = 1e-07, sol = 4,  : 
      unused argument (tier_col = 3)

我不明白这是怎么发生的,因为我在输入函数时做的第一件事就是调用tier_col变量。

任何帮助/想法?我研究了这个错误无济于事。

谢谢!!

4

0 回答 0