如何将中值作为一个独立变量纳入回归?

时间:2017-11-14 13:48:05

标签: r regression

我想对y上的x1x2的中间值进行回归。 我在下面的代码中使用了包plm

Result <- plm(y ~ x1 + median(x2,na.rm=T),data = Panel[which(!is.na(Panel$Firms)),],
              model = "random",effect = "time",index = c("Firms", "Time"))

但它不起作用。它返回

  

model.frame.default中的错误(术语(公式,lhs = lhs,rhs = rhs,data = data,:
)   变量长度不同(找到&#39;中位数(MB)&#39;)

如何将中位数值作为一个独立变量纳入回归?

2 个答案:

答案 0 :(得分:1)

假设您对公司特定的中位数感兴趣,使用dplyr包的示例将是:

library(dplyr)
panel <- panel %>% 
group_by(Firms) %>%
mutate(median_x2 = median(x2))

然后,您应该能够使用新生成的变量运行模型。

答案 1 :(得分:0)

错误是因为它们没有相同的长度,所以我认为如果不使用中位数