user3833190
user3833190

Reputation:

How to calculate panel bootsrapped standard errors with R?

I recently changed from STATA to R and somehow struggles to find some corresponding commands. I would like to get panel bootsrapped standard errors from a Fixed Effect model using the plm library as described here here for STATA users:

  1. My questions concern the approach in general (whether boot is the appropriate library or the library(meboot) )

  2. How to solve for that particular error using boot:

First get some panel data:

library(plm)
data(EmplUK) # from plm library

test<-function(data, i) coef(plm(wage~emp+sector,data = data[i,],
                                      index=c("firm","year"),model="within"))

Second:

library(boot)
boot<-boot(EmplUK, test, R = 100)

> boot<-boot(EmplUK, test, R = 100)
  duplicate couples (time-id)
  Error in pdim.default(index[[1]], index[[2]]) : 
  Called from: top level 
  Browse[1]> 

Upvotes: 7

Views: 1370

Answers (1)

agstudy
agstudy

Reputation: 121608

For some reason , boot will pass an index ( original here) to plm with duplicated values. You should remove all duplicated values and assert that the index is unique before passing it to plm.

test <- function(data,original) {
   coef(plm(wage~emp+sector,data = data[unique(original),],
       index=c("firm","year"),model="within"))
}


boot(EmplUK, test, R = 100)

## ORDINARY NONPARAMETRIC BOOTSTRAP
## Call:
## boot(data = EmplUK, statistic = test, R = 100)
## Bootstrap Statistics :
##       original      bias    std. error
## t1* -0.1198127 -0.01255009  0.05269375

Upvotes: 2

Related Questions