R では、対数変換された従属変数を使用してモデルを推定した可能性があります。
mfit <- lm(
formula = log(salary) ~ yrs.service + yrs.since.phd,
data = Salaries
)
次に、モデル フレームを変更し、更新を呼び出してモデルを再調整することができます。
n <- nrow(Salaries)
mfr <- model.frame(mfit)[sample(1:n, size=n, replace=TRUE),]
mfit2 <- update(mfit, data = mfr)
これにより、エラーが発生します。
Error in eval(expr, envir, enclos) : object 'salary' not found
その理由は、数式にはまだ従属変数log(salary)
があり、モデル フレーム内の変数は と呼ばれているためlog(salary)
です。Rは、それを見つけsalary
て呼び出すことができると考えていlog
ます。リサンプリングを行わないと同じエラーが発生します。この例は、リサンプリングが必要な理由を示しています。
上記の手順は、行のリサンプリングが実行されるブートストラップ パッケージからのものです。この動作は予期されるものですか、それともバグですか? データ引数の変数を変換することで回避できることは知っていますが、これは面倒で見過ごされているようです...