私はモノグラムスプラインを作るためにRでthe spline2 packageを使ってみようとしています。モノトーンスプラインin R
私は、独立変数の新しい値のモデルを評価するのに問題があります。一般的に、私はRの "予測"とそのスプライン2との関係、および生成されたbsオブジェクトの使い方を把握することができません。
this exampleにスプライン1を使ってみました。
plot(BRIyII$t,BRIyII$P)
の操作を行います。今
knots=c(9)
myMat=mSpline(BRIyII$t, knots = knots, degree = 3, intercept = TRUE)
mylm=lm(BRIyII$P~myMat)
、もし私たち:私のデータには、独立変数tと従属変数Pで、BRIyIIという名前のデータフレームであります
pr = predict(mylm,data.frame(BRIyII$t))
points(BRIyII$t,pr,col = "red")
は、だから私の質問は以下のとおりです。
の1-右端の予測値(赤い点)がその左に1よりも低いので、私はm個のスプラインの「単調」な性質を誤解していますか?
2 BRIyII $ tで定義された値以外のスプライン値をどのように評価できますか?いくつかの組み合わせを試しましたが、私はRの構文知識がありません。
newdata=seq.int(0,41.5,0.1)
私は単調性の問題についてはよく分かりません。実際、 'mSpline'と' bs'を使って(mtcarsの組み込みデータフレームを使って)回帰を実行したとき、私は全く同じ係数を得ました。予測に関して:まず、回帰を以下のように1行で行うことができます。 'mylm = lm(P、motsplot(t、knots = knots、degree = 3、intercept = TRUE)、data = BRIyII)'。 – eipi10
第2に、モデルに適合したデータを使って予測を行うには、 'predict(mylm)'を実行することができます。モデルに合わせてデータフレームを自動的に使用します。予測変数の他の値の予測を取得するには、データフレームに新しい値を「予測」する必要があります(新しいデータフレームの列名は、モデルに適合するために使用されたデータフレームの列名と一致する必要があります)。たとえば、 'predict(mylm、newdata = data.frame(t = seq(0,41.5,0.1)))'とします。 – eipi10
「簡単」な部分を少なくとも解決してくれてありがとう! :) – cladelpino