4

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

> 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")
4

1 回答 1

4

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

 dlply(data,.(series_id),function(x)lm(od~day,data=x))
于 2010-05-01T01:53:33.317 回答