在dlply中使用Lm,同时按变量排序

时间:2014-06-18 13:17:14

标签: r regression plyr lm

我有以下数据:dataframe

  • planid(每个计划用1到126之间的数字表示)
  • US_FRAC(每年每个基金的值介于0和1之间)和
  • market.premium(表示每年每个基金的市场溢价的值)

对于每个planid,我想进行回归,然后我US_FRACmarket.premium进行回归,因为每个planid都有10年的数据。

我使用了以下代码:

mods=dlply(dataframe,.('planid'),lm,formula=ADJ_US_FRAC ~ market.premium)

我需要 t -statistic和表中每个planid的系数,但我只能找到系数的代码。我做错了,因为我只得到一个带有1个拦截值的输出而没有别的。

1 个答案:

答案 0 :(得分:0)

在usfrac为此样本数据工作之前删除了planid和ADJ_中的引号

dataframe <- data.frame(planid=round(runif(1000)*126), US_FRAC=runif(1000), market.premium=rnorm(1000))
dlply(dataframe,.(planid),lm,formula=US_FRAC ~ market.premium)

此摘要()执行系数测试。您可以使用以下内容创建数据框:

C <- ddply(dataframe,.(planid),function(x) {summary(lm(formula=US_FRAC ~ market.premium,data=x))$coefficients['(Intercept)', ]})

Beta <- ddply(dataframe,.(planid),function(x) {summary(lm(formula=US_FRAC ~ market.premium,data=x))$coefficients['market.premium', ]})
亲切的问候