2016-10-20 36 views
1

我想執行以下功能:「未找到對象」在自己的R-函數調用glmulti時

library(glmulti) 
jmra <- function(fname){ 
    mydata <- read.csv(fname) 
    myvars <- c('X1', 'X2', 'X3', 'X4', 'X5', 'X6') 
    formula <- paste('Y ~', paste(myvars, collapse='+')) 
    glmulti.lm.out <- glmulti(formula, data=mydata, level=1, method="h", crit="aicc", confsetsize=50, plotty=F, report=F, fitfunction='lm') 
    return(glmulti.lm.out) 
} 
test <- jmra('test.csv') 

然而,我所得到的是這樣的錯誤消息:

錯誤glmulti(Y = Y〜X1 + X2 + X3 + X4 + X5 + X6:對象 'MYDATA' 未找到

有趣的是,如果相同的代碼是這個函數的外一切正常。那麼這裏發生了什麼?

+1

你是什麼確切意思? – HyperCube

回答

0

答案已經在這裏提供: error object not found when calling glmulti within a function

如果「glmulti」被稱爲是這樣,一切都將按假定:

glmulti.lm.out<- do.call("glmulti", list(formula, data=mydata, level=1, method="h", crit="aicc", confsetsize=50, plotty=F, report=F, fitfunction='lm')) 
+0

我想你應該給維護者發送一封郵件,這似乎是一個錯誤。 –

相關問題