gpt4 book ai didi

r - 使用 ggplot2 绘制受限三次样条曲线时出错

转载 作者:行者123 更新时间:2023-12-04 10:30:14 24 4
gpt4 key购买 nike

我想使用 ggplot2 来说明使用 geom_smooth() 的受限三次样条的拟合,但它似乎工作不正确。这是一个简短的例子:

# rms package Contains Restricted Cubic Splines (RCS)
library(rms)
library(ggplot2)

# Load Data
data(cars)

# Model Fit with RCS
fit <- lm(speed ~ rcs(dist, 5), data=cars)

# Obtain Diagnostic Data
plot.dat <- cbind(cars, fitted=fitted(fit))

# Compare Smooth to Actual
ggplot(data=plot.dat) +
geom_point(aes(x=dist, y=speed)) +
geom_smooth(aes(x=dist, y=speed), method="lm",
formula=y ~ rcs(x, 5), se=FALSE, colour="blue") +
geom_line(aes(y=fitted, x=dist), size=1.25, colour="red")

结果如下图: Comparison of Splines我不确定为什么 geom_smooth() 没有给出正确的结果。显然有一个解决方法(如上图所示),但是有没有办法让 geom_smooth() 产生正确的结果?

最佳答案

我不知道如何将它与 geom_smooth 集成,但我可以使用 rms 包中的 ggplot.Predict 来完成:

ddist <- datadist(cars)
options(datadist='ddist')

fit <- ols(speed~ rcs(dist,5),data=cars,
x=TRUE, y=TRUE)

ggplot(Predict(fit))+geom_point(data=cars, aes(x=dist, y=speed))

enter image description here

关于r - 使用 ggplot2 绘制受限三次样条曲线时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34752746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com