具有嵌套/多个组类别的R线性模型/ lmList?

时间:2015-10-13 11:52:09

标签: r model grouping linear

我正在尝试建立一个基于天气的月度能源消耗模型,按地点分组(有~1100)和年份(我希望从2011年到2014年这样做)。数据被称为" factin"看起来像这样:

Store   Month      Days UPD     HD      CD      Year
1   August, 2013    31  6478.27 0.06    10.03   2013
1   September, 2013 30  6015.38 0.50    5.67    2013
1   October, 2013   31  5478.21 5.29    1.48    2013
1   November, 2013  30  5223.78 18.60   0.00    2013
1   December, 2013  31  5115.80 20.52   0.23    2013
6   January, 2011   31  4517.56 27.45   0.00    2011
6   February, 2011  28  4116.07 16.75   0.07    2011
6   March, 2011     31  3981.78 12.68   0.39    2011
6   April, 2011     30  4041.68 3.83    2.53    2011
6   May, 2011       31  4287.23 1.61    6.58    2011

和我的模型代码,它只是为每个商店的所有年份吐出一组系数,如下所示:

factout <- lmList(UPD ~ HD + CD | Store, factin)

我的问题是,有什么方法可以为每个商店和年份获得系数,而不会为每年创建单独的数据框架?

1 个答案:

答案 0 :(得分:0)

     dat <- read.table(header = T, stringsAsFactors = F, text = "Store   Month year     Days UPD     HD      CD      Year
                  1   August 2013    31  6478.27 0.06    10.03   2013
                  1   September 2013 30  6015.38 0.50    5.67    2013
                  1   October 2013   31  5478.21 5.29    1.48    2013
                  1   November 2013  30  5223.78 18.60   0.00    2013
                  1   December 2013  31  5115.80 20.52   0.23    2013
                  6   January 2011   31  4517.56 27.45   0.00    2011
                  6   February 2011  28  4116.07 16.75   0.07    2011
                  6   March 2011     31  3981.78 12.68   0.39    2011
                  6   April 2011     30  4041.68 3.83    2.53    2011
                  6   May 2011       31  4287.23 1.61    6.58    2011")

factout <- lmList(UPD ~ HD + CD | Store, dat)



data.frame(Store = unique(dat$Store), summary(factout)$coef[1:2,1,1:3])

  (Intercept)        HD       CD
1    5405.108 -12.90986 107.2061
6    3581.307  32.93137 102.9780