2014-12-02 183 views

回答

0

以下function计算聚集的标准错误,因为它依赖于lm也可以合并权重(我检查,它会产生与Stata相同的结果)。

cl <- function(dat,fm, cluster){ 
      require(sandwich, quietly = TRUE) 
      require(lmtest, quietly = TRUE) 
      M <- length(unique(cluster)) 
      N <- length(cluster) 
      K <- fm$rank 
      dfc <- (M/(M-1))*((N-1)/(N-K)) 
      uj <- apply(estfun(fm),2, function(x) tapply(x, cluster, sum)); 
      vcovCL <- dfc*sandwich(fm, meat=crossprod(uj)/N) 
      coeftest(fm, vcovCL) }