Announcement

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

  • Initial Government Debt and Subsequent Growth of real GDP per capita

    Dear all,

    I am running a regression on per capita real GDP-growth (dlrgdp) as the dependent variable. I am trying to show that there is a negative correlation between initial government debt (pubgdp) and subsequent growth of real per capita GDP (dlrgdp). With my data, I would like to gain the same scatter as shown below.

    Click image for larger version

Name:	Figure.png
Views:	1
Size:	61.9 KB
ID:	1417753


    I tried to use the following code, but I am pretty sure there is the 'initial' und 'subsequent' perspective missing. Maybe someone could help?

    Code:
    * (1) growth rate of real GDP per capita (annual, in percent)
    gen lrgdp = log(rgdppc)
    *growth in percent
    gen dlrgdp = 100*d.lrgdp
    *average for subsequent 5 years
    tssmooth ma dlrgdp5 = dlrgdp, window (0 0 5)
    
    graph twoway scatter dlrgdp5 pubgdp || lfit dlrgdp5 pubgdp
    My work consists on the paper Kumar, Manmohan S.; Woo, Jaejoon (2010): Public Debt and Growth which is available at http://onlinelibrary.wiley.com/doi/1...12138/abstract

    I work with the following data :

    Code:
    * Example generated by -dataex-. To install: ssc install dataex
    clear
    input int year str11 country str3 iso double pubgdp float dlrgdp
    1970 "Australia" "AUS"             33.905    2.61116
    1971 "Australia" "AUS" 31.326500000000003   .4861593
    1972 "Australia" "AUS"            29.7352  1.0321617
    1973 "Australia" "AUS" 26.466100000000004   2.728677
    1974 "Australia" "AUS"            23.0131 -1.4009476
    1975 "Australia" "AUS"            22.8612  1.5191555
    1976 "Australia" "AUS"            22.2987   2.402687
    1977 "Australia" "AUS"            21.4885 -.12106895
    1978 "Australia" "AUS"            22.3799   2.942228
    1979 "Australia" "AUS"            22.8866  2.0715237
    1980 "Australia" "AUS"            21.3488  2.1464348
    1981 "Australia" "AUS"            18.9447  1.5575886
    1982 "Australia" "AUS"            17.3873  -4.133749
    1983 "Australia" "AUS"            18.8926   3.366375
    1984 "Australia" "AUS"            20.3591   4.125023
    1985 "Australia" "AUS"            21.9957  2.9996395
    1986 "Australia" "AUS"            23.4131   .6216049
    1987 "Australia" "AUS"            22.0637   3.871918
    1988 "Australia" "AUS"            24.8187  2.3539066
    1989 "Australia" "AUS"              22.77   2.203226
    1990 "Australia" "AUS"            21.5777 -2.0908356
    1991 "Australia" "AUS"            22.9141 -1.1769772
    1992 "Australia" "AUS"            27.1514   2.507448
    1993 "Australia" "AUS"            30.3218   3.115463
    1994 "Australia" "AUS"            31.4529   3.350067
    1995 "Australia" "AUS"             31.098   2.862406
    1996 "Australia" "AUS" 29.281000000000002   2.578783
    1997 "Australia" "AUS"             25.891  3.2987595
    1998 "Australia" "AUS"             23.724   4.045248
    1999 "Australia" "AUS"             22.552   2.792215
    2000 "Australia" "AUS"             19.545   .7367611
    2001 "Australia" "AUS"             17.161  2.3859024
    2002 "Australia" "AUS" 15.045999999999998  2.0503044
    2003 "Australia" "AUS"             13.205   2.760935
    2004 "Australia" "AUS"             11.931  1.2185097
    2005 "Australia" "AUS"             10.884  1.8460274
    2006 "Australia" "AUS"              9.957   1.471567
    2007 "Australia" "AUS"              9.675   3.066492
    2008 "Australia" "AUS"             11.735   1.631403
    2009 "Australia" "AUS"             16.739   -.344038
    2010 "Australia" "AUS"             20.469   .3876209
    2011 "Australia" "AUS"             24.191   .9057522
    2012 "Australia" "AUS" 27.766999999999996   1.936817
    2013 "Australia" "AUS"              30.75   .7319927
    2014 "Australia" "AUS"             34.205  1.2648582
    2015 "Australia" "AUS"             37.626  1.0016441
    2016 "Australia" "AUS"             41.091  1.3181686
    1970 "Belgium"   "BEL"            60.1221   5.914164
    1971 "Belgium"   "BEL"            59.7697   3.333759
    1972 "Belgium"   "BEL"            59.9781    4.76799
    end

  • #2
    I tried to use the following code, but I am pretty sure there is the 'initial' und 'subsequent' perspective missing. Maybe someone could help?
    You are matching debt levels at particular years (initial) and growth over a defined future period (subsequent). Therefore, over 5 year periods, debt in year 1 versus growth over year 1- year 5, debt in year 6 versus growth in year 6- year 10, and so on. The first differences in the logs of real GDP per capita give you the growth rate over two successive years.

    Comment


    • #3
      Dear Andrew, thank you for your response! Unfortunately, I have issues to understand it. Was my approach the right way?

      Comment


      • #4
        Here is one way to approach it.


        Code:
        *Log of GDP per capita
        gen lrgdp = log(rgdppc)
        
        *Annual growth in percent
        gen dlrgdp = 100*d.lrgdp
        
        *PRESERVE DATASET SO THAT WE CAN RESTORE TO PREVIOUS AFTER CHANGES
        preserve
        
        *\\ DEFINE 5 YEAR PERIODS BY YEARS THAT END THEM
        gen endyear= 5*ceil(year/5)
        gen startyear= endyear-4
        
        *\\AVERAGE OVER DEFINED PERIOD
        bys country endyear: egen adlrgdp= mean(dlrgdp)
        keep if year==startyear
        
        
        *\\CHECK TO SEE START YEAR IS MATCHED WITH IMMEDIATE 5 YEAR AVERAGE GROWTH RATE
        sort country year
        l, sepby(country)
        
        *\\GRAPH WITH TWOWAY
        
        twoway (scatter adlrgdp pubgdp) (lfit adlrgdp pubgdp), legend(off) ///
        xtitle("Real per capita GDP growth (% per annum), average for subsequent 5 years") ///
        ytitle("Initial government debt (% of GDP)")
        
        *\\RESTORE DATASET
        restore

        With the example dataset, you can see that debt in the defined start years are matched with the average growth rate in GDP per capita over the subsequent 5 year period (hence the "initial" and "subsequent" terminology)

        Code:
        . l, sepby(country)
        
             +------------------------------------------------------------------------------+
             | year     country   iso    pubgdp      dlrgdp   endyear   starty~r    adlrgdp |
             |------------------------------------------------------------------------------|
          1. | 1971   Australia   AUS   31.3265    .4861593      1975       1971   .8730412 |
          2. | 1976   Australia   AUS   22.2987    2.402687      1980       1976   1.888361 |
          3. | 1981   Australia   AUS   18.9447    1.557589      1985       1981   1.582975 |
          4. | 1986   Australia   AUS   23.4131    .6216049      1990       1986   1.391964 |
          5. | 1991   Australia   AUS   22.9141   -1.176977      1995       1991   2.131681 |
          6. | 1996   Australia   AUS    29.281    2.578783      2000       1996   2.690353 |
          7. | 2001   Australia   AUS    17.161    2.385902      2005       2001   2.052336 |
          8. | 2006   Australia   AUS     9.957    1.471567      2010       2006   1.242609 |
          9. | 2011   Australia   AUS    24.191    .9057522      2015       2011   1.168213 |
         10. | 2016   Australia   AUS    41.091    1.318169      2020       2016   1.318169 |
             |------------------------------------------------------------------------------|
         11. | 1971     Belgium   BEL   59.7697    3.333759      1975       1971   4.050875 |
             +------------------------------------------------------------------------------+
        Last edited by Andrew Musau; 10 Nov 2017, 11:34. Reason: With panel data, sort in terms of country and defined end year when averaging.

        Comment


        • #5
          Dear Andrew,

          thank you very much for your help! That worked perfectly! Thank you very much!

          I tried to get a residual plot with the variables adlrgdp & pubgdp after that, with the following command:

          Code:
          regress adlrgdp prvgdp
          rvfplot, yline(0)
          and received the following picture:
          Click image for larger version

Name:	Residualplot.png
Views:	1
Size:	46.1 KB
ID:	1417883


          I would guess, that there is a heterogeneity problem?


          Also, in the text, they say: "According to the OLS fitted line, the coefficient of inital debt is -0.025."
          To get the OLS fitted line, is it right to use the following command:

          Code:
          regress adlrgdp prvgdp
          and then just take the Value -.0071571 of the coefficient in the output? In my dataset, its then not -0.025, but -.0071571 ? Which is a huge difference :-) but I also have very different data.

          Code:
                Source |       SS           df       MS      Number of obs   =       170
          -------------+----------------------------------   F(1, 168)       =      7.70
                 Model |  11.3589075         1  11.3589075   Prob > F        =    0.0061
              Residual |  247.683846       168  1.47430861   R-squared       =    0.0438
          -------------+----------------------------------   Adj R-squared   =    0.0382
                 Total |  259.042753       169  1.53279736   Root MSE        =    1.2142
          
          ------------------------------------------------------------------------------
               adlrgdp |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
          -------------+----------------------------------------------------------------
                pubgdp |  -.0071571   .0025785    -2.78   0.006    -.0122476   -.0020667
                 _cons |    2.04568   .1731428    11.81   0.000     1.703864    2.387496
          ------------------------------------------------------------------------------

          Thank you very much in advance!

          Comment


          • #6
            To get the OLS fitted line, is it right to use the following command:
            regress adlrgdp prvgdp
            Yes

            In my dataset, its then not -0.025, but -.0071571 ? Which is a huge difference :-) but I also have very different data.
            It could be different samples. Bottom line, I would not worry so much about differences in the sizes of the coefficients because this depends on what units you use compared to what the authors use. For example, if you express debt in millions of dollars insted of hundreds, then this alters the size of the resulting coefficient. Try this out by dividing your debt values by 1000 and rerunning the regression. What I would concentrate on is the sign and significance of the coefficient: In your case, I would say that your findings are consistent with the authors, i.e., a negative and significant association.


            I would guess, that there is a heterogeneity problem?
            I think you mean heteroskedasticity and not heterogeneity. At this point, I won't be doing any regression diagnostics because with only 1 regressor, you most likely have omitted variable bias. Once you fully specify the model, apart from viewing the residual-fitted value plot, you can do a formal test of heteroskedasticity by typing

            Code:
            estat hettest
            Even in the presence of heteroskedasticity, there are remedies that enable you to obtain valid inference.

            Comment


            • #7
              Dear Andrew,

              thank you very much for your hints! They helped a lot for a better understanding! Thanks a lot!

              Comment

              Working...
              X