set more off cap log close log using Markov, replace use MarkovInput, clear ****************************** * 1. Define dependent variable ****************************** gen dem = polxnew > 7 if polxnew < . gen aut = polxnew < 1 if polxnew < . gen part = dem==0 & aut==0 if polxnew < . label variable dem "Democracy" label variable aut "Autocracy" label variable part "Partial Democracy" gen tripolx=0 if aut & polxnew<. replace tripolx=1 if part & polxnew<. replace tripolx=2 if dem & polxnew<. lab def tripolx 0 "Autocracy" 1 "Partial Dem." 2 "Democracy" lab val tripolx tripolx gen Ltripolx = L.tripolx lab val Ltripolx tripolx gen y0 = tripolx<1 gen y1 = tripolx<2 gen Ly0 = L.y0 gen Ly1 = L.y1 ******************************* * 2. Generate interactive terms ******************************* gen Lgdpy0 = Lgdp *Ly0 gen Lgdpy1 = Lgdp *Ly1 gen Lgrowthy0 = Lgrowth*Ly0 gen Lgrowthy1 = Lgrowth*Ly1 gen Lurbany0 = Lurban*Ly0 gen Lurbany1 = Lurban*Ly1 gen Ldensy0 = Ldensity*Ly0 gen Ldensy1 = Ldensity*Ly1 gen Ltradey0 = Ltrade*Ly0 gen Ltradey1 = Ltrade*Ly1 gen Lsumdy0 = Lsumdown*Ly0 gen Lsumdy1 = Lsumdown*Ly1 gen Lcursey0 = Lcurse*Ly0 gen Lcursey1 = Lcurse*Ly1 ****************************** * 3. Markov Results ****************************** ****************************** * 3a. GDP only ****************************** oprobit tripolx Ly0 Ly1 Lgdp Lgdpy1 dis _b[Lgdp] + _b[Lgdpy1] test Lgdp+Lgdpy1=0 ****************************** * 3b. GDP+modernization ****************************** oprobit tripolx Ly0 Ly1 Lgdp Lgdpy0 Lgdpy1 Lgrowth Lgrowthy0 Lurban Lurbany1 Ldensity Ldensy0 dis _b[Lgdp] + _b[Lgdpy1] test Lgdp+Lgdpy1=0 dis _b[Lgdp] + _b[Lgdpy1] + _b[Lgdpy0] test Lgdp+Lgdpy1+Lgdpy0=0 dis _b[Lgrowth ] + _b[Lgrowthy0 ] test Lgrowth +Lgrowthy0 =0 dis _b[Lurban ] + _b[Lurbany1] test Lurban + Lurbany1=0 dis _b[Ldensity ] + _b[Ldensy0 ] test Ldensity + Ldensy0 =0 ********************************* * 3c. GDP+modernization+political ********************************* oprobit tripolx Ly0 Ly1 Lgdp Lgdpy1 Lgrowth Lgrowthy0 Lurban Lurbany1 Ltrade Ltradey1 Lsumdown Lsumdy0 Lsumdy1 Lcurse dis _b[Lgdp] + _b[Lgdpy1] test Lgdp+Lgdpy1=0 dis _b[Lgrowth ] + _b[Lgrowthy0 ] test Lgrowth +Lgrowthy0 =0 dis _b[Lurban ] + _b[Lurbany1] test Lurban + Lurbany1=0 dis _b[Ltrade ] + _b[Ltradey1] test Ltrade + Ltradey1=0 dis _b[Lsumdown ] + _b[Lsumdy1] test Lsumdown + Lsumdy1=0 dis _b[Lsumdown ] + _b[Lsumdy1] +_b[Lsumdy0] test Lsumdown + Lsumdy1+Lsumdy0=0 save MarkovData, replace log close set more on