2016-05-25 4 views
1

J'estime la régression de Fama-Macbeth. J'ai pris le code de cette siteR: Pas moyen d'obtenir des erreurs standard à double cluster pour un objet de classe "c ('pmg', 'panelmodel')"?

fpmg <- pmg(Mumbo~Jumbo, test, index=c("year","firmid")) summary(fpmg)  Mean Groups model Call: pmg(formula = Mumbo ~ Jumbo, data = superfdf, index = c("day","Firm")) 

Residuals Min. 1st Qu. Median Mean 3rd Qu. Max. -0.142200 -0.006930 0.000000 0.000000 0.006093 0.142900 Coefficients Estimate Std. Error z-value Pr(>|z|) (Intercept) -3.0114e-03 3.7080e-03 -0.8121 0.4167 Jumbo 4.9434e-05 3.4309e-04 0.1441 0.8854 Total Sum of Squares: 1.6915 Residual Sum of Squares: 0.86425 Multiple R-squared: 0.48908

Après avoir estimé fpmg, j'estime SE robuste avec double cluster:

vcovDC <- function(x, ...){ 
vcovHC(x, cluster="group", ...) + vcovHC(x, cluster="time", ...) - 
    vcovHC(x, method="white1", ...)} 
coeftest(fpmg, vcov=function(x) vcovHC(x, cluster="group", type="HC1")) 

Je reçois l'erreur suivante:

Error in UseMethod("estfun") : 
    no applicable method for 'estfun' applied to an object of class "c('pmg', 'panelmodel')" 

Suggérez comment corriger cette erreur

Update: I have also tried "multiwayvcov" package but it shows the same error. It seems that the object class is not permitted in these packages(Sandwich, multiwayvcov etc.). It seems R essentially makes all my labour useless and I have hit the dead end. I have found how to do the above in python(I mean the code) but I have no knowledge of it.

Yat-il aucun moyen de résoudre le problème en R?


+1

Veuillez fournir un exemple reproductible, pas un lien vers un exemple reproductible –

+0

Ce service n'est pas un logiciel de développement gratuit. Ce n'est pas parce que j'ai fait un commentaire stylistique sur votre OP que je dois répondre à votre question, malgré vos commentaires de plus en plus exigeants toutes les 3-4 heures. –

+0

Compte tenu de votre message d'erreur, il semblerait que 'estfun' est une méthode obsolète ou vous essayez de l'appliquer à la classe incorrecte ... Je ne suis pas familier avec le paquet' plm', donc je ne peux pas fournir une réponse exacte. Les erreurs standard robustes du cluster sont disponibles dans R, comme une simple recherche google vous le montrera. –

Répondre

1

ce n'est pas un problème avec le code ou la conception de SW. Le fait est que (AFAIK) cela n'a pas de sens d'appliquer vcovDC - qui repose sur des hypothèses d'homogénéité pour les coefficients - à un estimateur de groupes moyens hétérogènes. pmg a déjà ses SE (non paramétriques) qui sont robustes à une gamme de situations. Voir Ibragimov et Mueller, JBES 2010. C'est pourquoi les classes sont, à cet égard, incompatibles: une incompatibilité SW qui renvoie à une incompatibilité théorique.