R 如何从绘制的线性模型平滑器中获取参数?

R 如何从绘制的线性模型平滑器中获取参数?,r,ggplot2,plot,R,Ggplot2,Plot,我有一个data.frame,其中包含3个时间序列,如下所示。当我用一个更平滑的时间序列绘制它们时,我希望能够得到我绘制的线性模型的参数,但我不知道怎么做 > data day od series_id 1 1 0.10 A1 2 3 1.00 A1 3 5 0.50 A1 4 7 0.70 A1 5 1 1.70 B1 6 3 1.60 B1 7 5 1.75

我有一个data.frame,其中包含3个时间序列,如下所示。当我用一个更平滑的时间序列绘制它们时,我希望能够得到我绘制的线性模型的参数,但我不知道怎么做

> data
day   od series_id
1    1 0.10        A1
2    3 1.00        A1
3    5 0.50        A1
4    7 0.70        A1
5    1 1.70        B1
6    3 1.60        B1
7    5 1.75        B1
8    7 1.70        B1
9    1 2.10        C1
10   3 2.30        C1
11   5 2.50        C1
12   7 2.70        C1

data = data.frame (day = c(1,3,5,7,1,3,5,7,1,3,5,7), 
od = c(0.1,1.0,0.5,0.7 ,1.7,1.6,1.75,1.7 ,2.1,2.3,2.5,2.7), 
series_id = c("A1", "A1", "A1","A1", "B1", "B1","B1", "B1", "C1","C1", "C1", "C1"))

r <- ggplot(data = data, aes(x = day, y = od))
r + stat_smooth(aes(group = series_id, color = series_id),method="lm")
>数据
日od序列号
1 10.10 A1
2 3 1.00 A1
35 0.50 A1
47 0.70 A1
51.70 B1
6 3 1.60 B1
7 5 1.75 B1
8 7 1.70 B1
9 1 2.10 C1
10 3 2.30 C1
11 5 2.50 C1
12 7 2.70 C1
数据=数据帧(天=c(1,3,5,7,1,3,5,7,1,3,5,7),
od=c(0.1,1.0,0.5,0.7,1.7,1.6,1.75,1.7,2.1,2.3,2.5,2.7),
系列id=c(“A1”、“A1”、“A1”、“A1”、“B1”、“B1”、“B1”、“B1”、“B1”、“C1”、“C1”、“C1”、“C1”))

r我不知道图层对象将来是否应该存储所有计算结果,但目前在图形上调用拟合,并且模型不存储在图层对象中。 作为一个简单的解决方法,您可以通过

 dlply(data,.(series_id),function(x)lm(od~day,data=x))

好问题!我通常自己重新拟合模型,但我一直在想是否有办法避免重复工作。好的,一旦你重新拟合了它,你可以使用模型输出来绘制覆盖图。。。