私はモデルを作成し、与えられた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)
しかし、上記の予測誤差と相関値を見つけた場合、私は目標の妥当性(mpg)をハードコードしています。以来、私は最初の引数として関数内の目標変数を渡している、私は私の目標変数を抽出し、myTesting data.frameに動的に割り当てる方法があります。 (例:myTesting $ target)
を示唆したよう
[[
を使用し、その後、all.vars
を使用して式から直接変数を抽出することができます数式から – akrun