我試圖創建一個函數來創建一個模型,並可以預測任何給定data.frame(例如.mtcars)的目標變量。如何提取函數內部使用R語言的函數參數?!
#Function to create a model for predicting a target variable
myRegModel = function(myFormula,myData){
sampleIndex = sample(1:nrow(myData),size= 0.7*nrow(myData), replace=FALSE)
myTraining = myData[sampleIndex, ]
myTesting = myData[-sampleIndex, ]
myDataFit = lm(myFormula, data = myTraining)
myTesting$predVar <- predict(myDataFit, myTesting)
myTesting$predErr <- abs(((myTesting$mpg - myTesting$predVar)/ myTesting$mpg)*100)
print(cor(myTesting$mpg, myTesting$predVar))
print(mean(myTesting$predErr))
print(summary(myDataFit))
}
myRegModel(mpg ~ ., myMtCars)
然而,我已經硬編碼我的目標varaible(MPG)中找到上述預測誤差和相關值的情況下。因爲,我將我的目標變量作爲第一個參數傳遞給函數,是否有一種方法可以提取我的目標變量並動態分配給myTesting data.frame。 (例如myTesting $ target)
你可以用'all.vars'獲得感興趣的變量從公式 – akrun