1

我打算拟合一个二维坐标云,它类似于一个不完整的椭圆。当我尝试使用R 中“splines”包中的bs()函数来获取拟合曲线(用于生成多项式样条的 B 样条基矩阵)时,它看起来像这样

但我的意图是这样的。

要将参数提供给 bs() 并绘制它,我只是按照这个

mod <- lm(y ~ bs(x, knots = seq(0.1, 0.9, by = 0.1)))
pdat <- data.frame(x = seq(min(x), max(x), length = 100))

## predict for new `x`
pdat <- transform(pdat, yhat = predict(mod, newdata = pdat))

# plotting
plot(y ~ x)
lines(yhat ~ x, data = pdat, lwd = 2, col = "red")

有什么办法可以达到我的目的吗?

谢谢!

4

0 回答 0