Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • xtabond two-step: variance-covariance matrix of the two-step estimatoris not full rank

    Dear Stata community,

    I am currently trying to run a Arellano-Bond (difference GMM) regression using Stata 16.0. In particular, I am running the following type of regression:

    xi: xtabond Y X1 X2 X3 X4 X5 i.year, twostep vce(robust)

    Depending on the set of control variables I use, I get the following error message:

    variance-covariance matrix of the two-step estimatoris not full rank
    Two-step estimator is not available. One-step estimator is available and variance-covariance matrix provides correct coverage.
    r(198);


    However, if I run the exact same regression in Stata 13.0, no such error message occurs and Stata gives me nice results. I thought it might be due to changes in the way standard errors are being calculated. However, some regressor constellations work under both Stata 16.0 and Stata 13.0 and present the same results. Also, If I check what has been changed from version 13.0 to 14.0 (the error message occurs in all versions from 14.0 onwards) nothing is mentioned under the xtabond command and it seems as if vce(robust) hasn't been changed either.

    The questions has already been discussed, but unfortunately the problem couldn't be identified (https://www.statalist.org/forums/for...ferent-results).

    How can it be that the matrix does not have full rank according to Stata 16, but it apparently does have full rank according to Stata 13? Should I simply use Stata 13? If you have any ideas why this message only occurs in later versions, I would be very thankful.

    Thank you so much in advance!

    Best regards,
    F

  • #2
    Welcome to the forum. Your question essentially was answered in post #10 of the thread you have linked.

    The econometric problem is that you probably have a large number of instruments relative to the number of observations. This causes problems with the estimation of the optimal weighting matrix which in turn makes two-step estimates unreliable.

    A remedy might be to reduce the lag depth for the instruments or to "collapse" the instruments. Collapsing is not available with the official Stata commands. You could use my community-contributed xtdpdgmm command instead:
    P.S. There is a preference for real names on this forum: https://www.statalist.org/forums/help#realnames
    https://www.kripfganz.de/stata/

    Comment


    • #3
      Dear Sebastian,

      thank you for your reply. I have for example 331 instruments and 1,592 observations (122 groups).

      If the error message occurs due to too many instruments, do you know why it worked in Stata 13?

      I just checked whether the ratio of instruments to observations was higher in the cases rejected by Stata 16 than in those accepted by Stata 16. In fact, when comparing two examples, Stata 16 only returns an output in the constellation with the higher instrument to observations ratio. So I believe the error message does not occur because of too many instruments relative to the number of observations. I do understand that many instruments can make the estimates unreliable, but I don't get why it should prevent Stata from reporting outputs.

      Thank you for your help!

      Comment


      • #4
        Nothing has changed in the computation of the estimator across Stata versions. In Stata 16, in some cases, results are simply not shown any more because StataCorp decided that they are not reliable. This is not a simple function of the ratio of instruments to observations. As the error message states, the variance-covariance matrix is no longer of full rank. I wonder whether in Stata 13 some of the standard errors in the estimation output were missing (which would be the effect of such a reduced rank)? In that case, your Stata 13 results are effectively not useful either.
        https://www.kripfganz.de/stata/

        Comment

        Working...
        X