制限付き3次スプラインを使用してモデリングしているデータがあります。私はrms
パッケージのrcs
変換関数を使用して、線形モデルの変換された変数を生成しています。ここでは、5ノットを使用した例を示します。制限付き3次スプラインを使用した新しいデータの予測値
library('rms')
my_df <- data.frame(
y = -4 * -100:100 + -1.5 * (-100:100)**2 + 3 * (-100:100)**3 + rnorm(201, 0, 1e5),
x = -100:100
)
mod <- lm(y ~ rcs(x, 5), data = my_df)
私はデータに合わせた後、私はx
値の特定のドメインの予測y
値を見つけるしたいと思います。ここで私が今やっていることです:
new_data <- data.frame(x = -3:3)
predict(mod, newdata = new_data)
ただし、これは警告メッセージを生成します。
Warning message:
In rcspline.eval(x, nk = nknots, inclx = TRUE, pc = pc, fractied = fractied) :
5 knots requested with 7 unique values of x. knots set to 5 interior values.
何をこれは意味し、そして何が起こっていますか?結び目の場所はすでにmod
に定義されているはずなので、なぜそれが私が与える7つのx
の値の新しい結び目を見つけようとしているのか分かりません。私はにもっと多くのx
の値を提供することによって警告メッセージを避けることができ、私は必要のないものを無視するだけですが、私はpredict
が実際にやっていることを心配しています。
これはどこに文書化されていますか? – user102162