2016-04-09 18 views
-1

私はそうのように私のデータに適合することを、Rparametric polynomial regressionを持っている:Rにフィッティングされた多項式をプロットする方法は?

poly_model <- lm(mydataframef$y ~ poly(mydataframe$x,degree=5)) 

mydfは明らかにyxが含まれています。それから私は私が装着された多項式を追加する次に、この

plot(mydataframe$x, mydataframe$y, xlab='regressor or predictor variable polynomial regression', ylab='outcome or label') 

ようにそれをプロットするので、私は次の操作を行いますの Warning message: In abline(poly_model) : only using the first two of 6 regression coefficients

abline(poly_model) 

これは私に警告を与えますコースは、プロットはすべて邪魔にならず、約束されているように、最初の2つだけを使用します。これはインターセプトとスロープです。なぜ私は1つの予測変数しか持たないのですか?だから、プロットはとにかく2-dになるはずですか?混乱している。ありがとう。

+2

[this](http://stackoverflow.com/questions/23334360/plot-polynomial-regression-curve-in-r)リンクは役に立ちますか? – steveb

+0

x値の範囲を挙げて、 'predict'を使ってy値を生成してプロットします。 'newx = seq(min(dat $ x)、max(dat $ x)、length.out = 100); newdat = data.frame(newx = newx); newdat $ newyは予測します(poly_model、newdata = newdat); (newx、newy、type = "l") '。 – Gregor

+0

多項式応答をプロットするために' abline'を使用しようとすると、非常に賢明ではないようです。おそらく線を描く 'lines'関数が必要でしょう。 –

答えて

1

をここでは、出力プロットは、

enter image description here

です

poly_model <- lm(mpg ~ poly(hp,degree=5), data = mtcars) 

x <- with(mtcars, seq(min(hp), max(hp), length.out=2000)) 
y <- predict(poly_model, newdata = data.frame(hp = x)) 

plot(mpg ~ hp, data = mtcars) 
lines(x, y, col = "red") 

、答えです

2

fittedを使用してください。与え

fm <- lm(demand ~ poly(Time, 3), BOD) 
plot(demand ~ Time, BOD) 
lines(fitted(fm) ~ Time, BOD, col = "red") 

::組み込みdata.frame BODを使用して

screenshot

+0

これは多項式には合わないようですが、スプライン回帰のようなものですか? – Sother

+1

ここでのフィット感は、質問が尋ねたことであり、他の答え(データセットと度をモジュロとする)と同じです。 –

+0

接続されたドットの数が少ないので、不安定に見えますが、ありがとう! – Sother

関連する問題