Announcement

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

  • Ivregress question: liml and 2sls outputs are identical?

    Hello all! Long time reader, first time poster.

    I am attempting to run a regression analysis to estimate the effect of changes in a drug's list price ("WAC") on changes in total prescription costs (the total amount paid by the insurance company + patient). In my analysis, I use a drug product's Medicaid market share in a given year as an instrument for that product's change in ln WAC in that same year. I am concerned that my IV is weak (my fstat is 9.36). I read that using the "liml" ivregress specification instead of the "2sls" specification can produce more accurate confidence intervals for models where the IV is less strongly correlated with the independent variable.

    To do this analysis, I am using the "2sls" and "liml" specifications of the "ivregress" command in Stata version 18. However, when I run these two commands, they produce the same output. I assume that this is an issue with my code, not that the true estimates are truly equal. Could anyone help shed some light on this issue? I have tried eliminating the clustered standard errors specification, but I run into the same issue.

    Unfortunately, I am using secure data so I cannot provide a snipet of my data, but I have constructed an example dataset of random numbers to illustrate what I am working with. I have included the commands I am using, and a snapshot of the results I get when I run these commands on the dataex sample dataset. I am only interested in the d_ln_WAC coefficients (not the year coefficients), so I have omitted the yearly coefficients from the output tables for brevity's sake.

    Code:
    * Example generated by -dataex-. For more info, type help dataex
    clear
    input float(d_ln_totRxCst d_ln_WAC mcaid_MS) str71 product double year
      .10388627   .3922045   .21420133 "Product A" 2013
      .02340705  .29183087   .15336977 "Product A" 2014
       .0382744  .36044195    .5073117 "Product A" 2015
     .068910174  .10574597    .4875406 "Product A" 2016
       .0988664   .3542604    .6383541 "Product A" 2017
      .12432267   .3528448    .4756944 "Product A" 2018
     .010825422   .2995732    .2484591 "Product B" 2009
     .025314325   .3678505     .517279 "Product B" 2010
     .002962874   .2773813   .13118117 "Product B" 2011
      .09601311  .08616103   .22022897 "Product B" 2012
    .0015590896   .3314355    .0962985 "Product B" 2013
      .06826304 .017686142    .4576417 "Product B" 2014
      .25544038   .3452151   .18909235 "Product B" 2015
      .29460198  .14104183    .6298876 "Product B" 2016
     .009743756    .308816   .40139624 "Product B" 2017
       .2962454  .23444797   .07802926 "Product B" 2018
       .2682318  .12911065   .29016587 "Product C" 2007
      .29054204  .06917226 .0021365427 "Product C" 2008
     .071766086   .3221458    .4661984 "Product C" 2009
    end
    label var d_ln_totRxCst "mean total Rx cost"
    label var d_ln_WAC "Chg in ln WAC"
    label var mcaid_MS "Mcaid Market Share"
    label var product "product"
    
    *******
    CODE
    *******
     ivregress 2sls d_ln_totRxCst i.year (d_ln_WAC = mcaid_MS), vce(cluster product)
     ivregress liml d_ln_totRxCst i.year (d_ln_WAC = mcaid_MS), vce(cluster product)
    
    **********
    OUTPUT
    **********
    ** 2SLS SPEC **
    Instrumental-variables 2SLS regression            Number of obs   =         19
                                                      Wald chi2(12)   =       2.71
                                                      Prob > chi2     =     0.9973
                                                      R-squared       =          .
                                                      Root MSE        =      .6438
    
                                    (Std. err. adjusted for 3 clusters in product)
    ------------------------------------------------------------------------------
                 |               Robust
    d_ln_totRx~t | Coefficient  std. err.      z    P>|z|     [95% conf. interval]
    -------------+----------------------------------------------------------------
        d_ln_WAC |   12.51875   9.441512     1.33   0.185    -5.986276    31.02377
    ...
    ------------------------------------------------------------------------------
    
    ** LIML SPEC **
    .  ivregress liml d_ln_totRxCst i.year (d_ln_WAC = mcaid_MS), vce(cluster product)
    
    Instrumental-variables LIML regression            Number of obs   =         19
                                                      Wald chi2(12)   =       2.71
                                                      Prob > chi2     =     0.9973
                                                      R-squared       =          .
                                                      Root MSE        =      .6438
    
                                    (Std. err. adjusted for 3 clusters in product)
    ------------------------------------------------------------------------------
                 |               Robust
    d_ln_totRx~t | Coefficient  std. err.      z    P>|z|     [95% conf. interval]
    -------------+----------------------------------------------------------------
        d_ln_WAC |   12.51875   9.441512     1.33   0.185    -5.986276    31.02377
    ...
    ------------------------------------------------------------------------------
    I apologize if I have omitted any important details from my post. Please let me know if anything is unclear!

  • #2
    With one endogenous variable and one excluded (exactly identified), I believe the results will be the same.

    Comment


    • #3
      Originally posted by George Ford View Post
      With one endogenous variable and one excluded (exactly identified), I believe the results will be the same.
      Thank you so much, George!

      Comment

      Working...
      X