
    M/Ph                         d Z ddlZddlZ G d d          Zej                            ej                            e                    Z	 G d d          Z
 G d d          Z G d	 d
          Z G d d          ZdS )z-
Test Results for discrete models from Stata
    Nc                       e Zd ZdS )	NamespaceN)__name__
__module____qualname__     s/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/statsmodels/discrete/tests/results/results_discrete.pyr   r   	   s        Dr	   r   c                   .    e Zd Zd Zd Z e            ZdS )Anesc                     d| _         dS )zIr
        Results are from Stata 11 (checked vs R nnet package).
          Nnobsselfs    r
   __init__zAnes.__init__   s     			r	   c                     t                      } d| _        g d}t          j        |dd          | _        g d}t          j        |dd          | _        t          j        t          j        	                    t          d                    | _        t          j        t          j        	                    t          d                    | _        d | _        d	| _        d
| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        g d}t          j        |dd          | _        g d}t          j        |dd          | _        ddgddgddgddgddgd d!ggd"d#gd$d%gd&d'gd(d)gd*d+gd,d-ggd.d/gd0d1gd2d3gd4d5gd6d7gd8d9ggd:d;gd<d=gd>d?gd@dAgdBdCgdDdEggdFdGgdHdIgdJdKgdLdMgdNdOgdPdQggdRdSgdTdUgdVdWgdXdYgdZd[gd\d]ggg}t          j        |          | _        t          j        g d^g d_g d`g dag dbg dcg ddg          j        | _        t          j        g deg dfg dgg dhg dig djg dkg          j        | _         t          j        g dlg dmg dng dog dpg dqg drg          j        | _!        t          j        g dsg dtg dug dvg dwg dxg dyg          j        | _"        t          j        g dzg d{g d|g d}g d~g dg dg          j        | _#        t          j        g dg dg dg dg dg dg dg          j        | _$        t          j        g dg dg dg dg dg dg dg          j        | _%        t          j        g dg dg dg dg dg dg dg          j        | _&        t          j        t          j        	                    t          d          d          | _'        | S )Nr   )$gT-g13}?gA}˜.gz(?g'DHu?g:׿g?\gW?gOrgqTh,?g4?gg6 gzbJY?g~XOjgHK}g }z?g*qSg:Bpg@ku?gmXǁg`l?g)<?gDItgn8᷿g?|O'?gvqUg??gAI?g{L=g`¿g' @g(lQgh{O@n?gPS{?g	$6()   F)order)$gbOu?g]?g@EWϹz?gTQֲ?g^)&?g'?'?g"I?g_P釵?gu5?gWaյ?g=Ж?g( Tl?gNb4?g$NK?g,Z 4?gvgP*?gB.5?guɦ1?ga
ڭk?gm?g.HO=?gd?g_,8Ӛ?gԙjӀ?g*q%?g/U?g.GU,?gõ?gÚL
?g)J?g;?g9[?gmk|?g̰2R?g;y?g/?zyhat_mnlogit.csvzphat_mnlogit.csvgޫזgcYg#@g% {S*g3?   i     r   gg@g2kĨ@)$gH2տg}/?:p	@gD !gR?gjuF?gƫgR.R!g}@gu@3%g"=D @g p0@g!DgCVHgcRa@g`[g:FS+ga#g?gAq [	g? g_v#@g<
g @g e	@grzggVr>
&@g[gtj@gpR0@guI giv
gX=7,@gC4g٩ME@g[B7@gR)&)$g;8uq]?g0a6u%X?g-xF!?g=?gKQ?gCv?go1O?gj3?gՉ(>o?g2MĚK?gi25?gʠmDj?gG͇-?gXp3?g6FOQ?gR?gE54?g{0Y?gP(?g LhD;gҷZ[?gq!H?gT?gY<gcwA0?gn]aɛ9g?gghH?g;?gz2ʑ<gG=u K?g~+?F6g39؂?ge-o:?geD>g9gE'g:-~?gj<?gbL?g_(Qgxxρ刿gtΛgnr?gg<)[?g8t̹g@R?ȍ?gL/ſgUgU?g5=nR?g@m`vgF@~gtQol?g,I?g
Xl8q?g&jo?gqQg%)g1˿g[6w?gE6F?g`4[K?ghge6#~?g̞LпggB?g3}ƅgԤo-?gu ]gG9MagVJ*ƿgEBwwgfbk?gj{?gQAəgSEu?ghm?gFB?go?gGc?gs|8"g\gjſgn~hg'
b?g" 89?g@7o͠ge:
whgy"*ĩ?gj3?gfI%d?gv ?g(5
In!gKrJgΒ̿gUCeحgg?gyZ~*@gOJgz?g=@,Z?g'l??g|C]?g<*I?g=],gCVz$)gj1LEǁ?gt;S	gSf?gIfĝlOx)g\a|?g$}  g YIag[ugCI,v)g"I\pg윿giZmyPgRa86{?g;P?)g!t[]gGH&wga(dAGge>dvg`žTA?)g;Χ%Pge_ U?grhp??gQpG\?gXOa?)g]$Yg905:?g(tFg09Zs?gacr%d?)gR'Jɍb~g!w`X?g+D?gct_?gXv?)go?g;,({?gBV=z)G?g5hxۀ?g0`?)g sGo?g1l'%~?g4gH?gP^H?gfo`?)gYi?g8=KEw?gꢡE?gd<|?gG^?)gP_?g̿"j?g6bU9?g|Ѫq?g&+n0R?)g vh?gD
J&v?g;MJC?gcz?g5^?)gun-Um?g?Sw|?gَܬG?gXZ?g&Ob?)gܩ(k?gr'?gjN3F?g,  ~?g2sa?)g:ȸ?g{NϤg:$>cf?gW#A
gVn{)g^Ն?g]y@gu'8bgdƂgeL|^)gMDogȆmGgZ~g!SgE=>y?g~y,?)gcg(!LgHSgg㮛C?)g	#lg]}Jj?g|~r:H?g.t~?gΠJ,r?)gKAwgH{?gU[BguH?g<UYIz?)g=hFW}gT!(?g({7@?g^GW?g{ΞOw?)g2Teq?gi+?g\3J?g)[?go+uc?)g*ȉs?gSRFM?g-O?gy?gBGe?)g36p?g|Z8?gr.!L?gEoj?g c?)gLe?g%裓}?gFxA?g>"|w?gdh42Z?)gbn?gؖD?gHv:H?gLÒ?g>c?)gJ+<r?gߢ?g];M?g!&}?g7f?)ga`jf?gL3?g"OsA?gÊy?ge\?)g9)@~v?g	bg`U}h?gC}٣Lg4E6kgg?п)g?dQl?g{lvgv]
_gpi66?gadig1jȬʿ)g<i?lzgo;tp?gvKgo[ц?grbf?ge2pĿ)g`	agng*r-Xgyڻrg
m:fE?gO)gk]ŝC?g<v+<ngf7?g	96䚹(gz2x J?g;$.?)gt0*Wa?gl$	4g-\Ng~cP>gȔ)8gQ]d?)gyYcig9.VA?go܋3?gt?gOY;e?gs=Ks?)gRphn?g޻E?gSWdF?gR+IT?g"qM_?gds?)g-ARNo?g&?g{{oHH?g@+G?g[V^`?gj9C?)g+Kni?gu?g碌+?PE?g>{?g*a]?g,<?)gKt&/`?g&.t?g6P9?gwJ^q?gJ. TS?gr;T(?)ge3~Wh?gz?g"@B?ga<Ȅz?gaW_?ga?)gi(_`7l?gP?g#(+3F?gcDG ?g5&~sb?g}ã?)g\"ʟ7j?gGP8?g3?D?gb+)
}?gk)4a?g0ݲ/?)g(,+?g
g'?g9Lg#~gɢ	)gC)/?g2}ƅؿgoSg20g"ӠgM)gM!_[g&$gѿg!!ygΈo?g<?gd )g"Ӫg`6!̿g+d0?ggjRDeGӆ?g~3Pѿ)giGhgZ7f?gl\bيW?gT2?gt6?gLH?)g_aj?g(?gg/g^c/?gaG#?gsiq?)gu$Ѫg
ox?g6f
 Tg8Ż?gGsϤ?ge0jK@)g/ܛ?gi!?g+xyu?gOA6<?g20o?g֌?)g@Wۚ?g&?g*2u?gr?gu/?g5L?)gȮwrt?g7зU?gpo>:ܣ{?g?gfԔ?gY?)g׬-?g$0?g2xB?gr-?g=?gdkv?)g< Pj?g %%Hc?gz?gBJ?gNΕ?gd
?)gD\P?g3QC]?gw^=w?gKOa,?gUB'?gÍ?)g-z`-bK?g4Rʻ?gh-y?gKj?g9J?giؖ?zmnlogit_resid.csv,	delimiter)(r   r   npreshapeparamsbseloadtxtospathjoincur_diryhatphat
cov_paramsllfllnullllr
llr_pvalue	prsquareddf_modeldf_residJKaicbiczpvaluesasarrayconf_intarrayTmargeff_dydx_overallmargeff_dydx_overall_semargeff_dydx_meanmargeff_dydx_mean_semargeff_dydx_dummy_overallmargeff_dydx_dummy_overall_semargeff_eydx_dummy_overallmargeff_eydx_dummy_overall_seresid)objr    r!   r5   r6   r8   s         r
   mnlogit_basezerozAnes.mnlogit_basezero   s   kk   Zs;;;
	? 	? 	? *S'555:bgll74FGGHH:bgll74FGGHH!#
 '&	B 	B 	B 
1gS111	C 	C 	C j'===)$#*%)$)$)$& *%#*%##*%' )$9%)$)$)$*%' *%#)$I&#*%' *%I&*%##*%' *%#)$##;')?$*J z(++ $&83 3 33 3 31 1 12 2 21 1 11 1 11 1 1-
 $ $  	   ')hMMMKKKLLLLLLMMMLLLLLL0
 ' '  	# !#6 6 66 6 64 4 45 5 54 4 44 4 44 4 4*5 !6 !6 78 	 $&8MMMLLLMMMMMMMMMMMMMMM-
 $ $  	  *,F F FE E ED D DE E ED D DD D DC C C3D *E *E FG 	& -/H              6 - -  	)  *,              3 * *  	&  -/H              6 - -  	)" Jrw||G5HII),. . .	
r	   N)r   r   r   r   rE   r   r	   r
   r   r      sC          Y Y Yv ('))r	   r   c                   |    e Zd Zd Zd Z e            Zd Z e            Zd Z e            Zd Z e            ZdS )
DiscreteL1c                     dS )z{
        Special results for L1 models
        Uses the Spector data and a script to generate the baseline results
        Nr   r   s    r
   r   zDiscreteL1.__init__   s	    
 	r	   c                      t                      } t          j        }g d| _        ddg||gddg||gg| _        d|d|g| _        d| _        d	| _        d
| _        d|d|g||||gd|d|g||||gg| _	        | S )a  
        Results generated with:
            data = sm.datasets.spector.load()
            data.exog = sm.add_constant(data.exog, prepend=True)
            alpha = 3 * np.array([0, 1, 1, 1])
            res2 = sm.Logit(data.endog, data.exog).fit_regularized(
                method="l1", alpha=alpha, disp=0, trim_mode='size',
                size_trim_tol=1e-5, acc=1e-10, maxiter=1000)
        )g<^.i        gn ?rJ   goRM"g!-J?gQ:gh'Nn?g}#@gEVǼ?   gIE@g,F@gŅfK@g+/Sҿgu9?
r   r   nanr    r8   r!   
nnz_paramsr3   r4   r)   rD   rM   s     r
   logitzDiscreteL1.logit  s     kkf777
:&#J:&#J	
 sZE$$k3/#sC #
C0#sC 	"
 
r	   c                  B    t                      } g dg dg dg| _        | S )ai  
        Results generated with
            params = np.zeros((3, 4))
            alphas = np.array(
                    [[0.1, 0.1, 0.1, 0.1],
                        [0.4, 0.4, 0.5, 0.5], [0.5, 0.5, 1, 1]])
            model = sm.Logit(data.endog, data.exog)
            for i in range(3):
                alpha = alphas[i, :]
                res2 = model.fit_regularized(method="l1", alpha=alpha,
                                             disp=0, acc=1e-10,
                                             maxiter=1000, trim_mode='off')
                params[i, :] = res2.params
            print(params)
        )gz$gbRC*@g+؈X?g8u @)g&Ng+ ?g<ⴖ?gv!:?)g?BigWY_M3?g       gm?)r   r    rD   s    r
   sweepzDiscreteL1.sweep   s9      kkDDDCCCCCCE
 
r	   c                  $   t                      } t          j        }g d| _        ddgddgddgt          j        t          j        gg| _        dd	d
t          j        g| _        d| _        d| _        d| _        ddd|gddd|gddd|g||||gg| _	        | S )a  
        Results generated with
            data = sm.datasets.spector.load()
            data.exog = sm.add_constant(data.exog, prepend=True)
            alpha = np.array([0.1, 0.2, 0.3, 10])
            res2 = sm.Probit(data.endog, data.exog).fit_regularized(
                method="l1", alpha=alpha, disp=0, trim_mode='auto',
                auto_trim_tol=0.02, acc=1e-10, maxiter=1000)
        )g7|gы ?g"'|J?rJ   gdڭ"g=V;qgݞ?g57@g*%縿g(?gn0Ky @gX?gqm?   gX+3C@gZ~fE@g/H~.@g]E̲gc?zgy?g igSGUv?rL   rO   s     r
   probitzDiscreteL1.probit9  s     kkfAAA
+&*%:&VRV$	&
 
ZH$$k37:{C@+
C@#sC8	:
 
r	   c                     t                      } g dg dg dg dg dg dg| _        ddgt          j        t          j        gd	d
gt          j        t          j        gt          j        t          j        gddggddgddgddgddgddgddggddgddgddgt          j        t          j        gdd gd!d"ggd#d$gd%d&gd'd(gd)d*gd+d,gd-d.ggd/d0gd1d2gd3d4gd5d6gd7d8gd9d:ggd;d<gd=d>gd?d@gdAdBgdCdDgdEdFggg| _        g dGt          j        dHdIdJdKdLgg dMt          j        dNt          j        dOdPdQgt          j        dRdSdTdUdVgg dWg| _        dX| _        dY| _        dZ| _        | S )[a  
        Results generated with
            anes_data = sm.datasets.anes96.load()
            anes_exog = anes_data.exog
            anes_exog = sm.add_constant(anes_exog, prepend=False)
            mlogit_mod = sm.MNLogit(anes_data.endog, anes_exog)

            alpha = 10 * np.ones((mlogit_mod.J - 1, mlogit_mod.K))
            alpha[-1, :] = 0
            mlogit_l1_res = mlogit_mod.fit_regularized(
            method='l1', alpha=alpha, trim_mode='auto', auto_trim_tol=0.02,
            acc=1e-10)
        )gq$iP?gRQg,zgQ'kg.u߽g/`)rJ   gB6"P?g-nؾ?gV?gq?g>?)g˅ʿWgq[g:4g
ksg&c𬌿gϗSw)rJ   g	c?rJ   g,2?g.?gb$l?)rJ   g|6\Ʀ?ggP?g h?16?g5۪^]?gSLƸ?)gƒ\6?gߧgѸ˭ g:gxgcYYpy"gIgjGi_?g&8pgrvgY.?gأ?g2 g ]Q?g$+¿gcpb?g8롿gHm}sg>33g!W?g~Wrs?g)5A?gZIg"B?g2ƿgeM?g cÿg[?g`.gIZ>?g\|g+Ư?g1.M:g<}Fпg	g҃ig?g@	?g B^?grOgI2?gוg)S^?g̀?g^/?gjS+gVL<gE<0쿿gAD?gr?gA'?gZegqٮg&އgڷ?g_eH?g ݬ?gtY,gsFgWi ſg)Qa2v>gep?gw0?gh;gw"!?gǖNeg/?g҉Z[?gu?g^,X5&g٧4)gF剔$?g*B?gf1-?guh'V?gݣ@D?g:S?gꡦ+?gp?gʀ?g!]	0n?gf>R
˽?)g`Δy?g{Wo?gNY?g
I?gE*k}?gsw~?gH٢7?g?gjOA?gXs~?gCλ?gJ3?g*AD?g%b?gX(K?)gj>?g,Eч?g&{[?gJg?gk'F?g(P4?    g	p@gNNIͨ@)	r   r    r   rM   r8   r!   rN   r3   r4   rR   s    r
   mnlogitzDiscreteL1.mnlogitX  sh    kk            
 Z(frv&K(frv&frv&J') Z(Z(K(Z(J'Z(* Z(Z(Z(frv&Z(K(* Z(J'Z(Z(J'K(* Z(J'K(Z(J'K(* K(J'Z(Z(J'[)+I),X  Vj:
Z  Vj"&:
Vj:
Z   $$
r	   N)r   r   r   r   rP   rS   rV   rY   r   r	   r
   rG   rG      s            : EGGE  . EGGE  : VXXFX X Xt giiGGGr	   rG   c                   L    e Zd ZdZd Zd Z e            Zd Z e            ZdS )Spectorz#
    Results are from Stata 11
    c                     d| _         d S )NrX   r   r   s    r
   r   zSpector.__init__  s    			r	   c                  6   t                      } d| _        g d| _        g dg dg dg dg| _        g d| _        g d| _        g d	| _        g d
| _        t          j	        g d          | _
        t          j	        g d          | _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        d| _        g d| _        ddgddgddgddgg| _        g d| _        g d | _        g d!| _        g d"| _        g d#| _        g d$| _        g d%| _        g d&| _        g d'| _        g d(| _         g d)| _!        g d*| _"        g d+| _#        g d,| _$        g d-| _%        g d.| _&        g d.| _'        g d/| _(        g d0| _)        g d1| _*        g d2| _+        g d3| _,        g d4| _-        g d5| _.        g d6| _/        g d7| _0        g d8| _1        g d9| _2        g d:| _3        g d;| _4        g d<| _5        g d.| _6        g d.| _7        g d=| _8        g d>| _9        g d?| _:        g d@| _;        g dA| _<        g dB| _=        g dC| _>        g dD| _?        g dE| _@        g dF| _A        g dG| _B        g dH| _C        g dI| _D        g dJ| _E        g dK| _F        g dL| _G        g dM| _H        g dN| _I        g dO| _J        g dP| _K        g dQ| _L        g dR| _M        g dS| _N        g dT| _O        g dU| _P        g dV| _Q        t          j	        dWdgddXgg          | _R        | S )YNrX   )g,@gq7@\?g<Gn@gN*
*)gS4?Sq@碿eX^?5>K)r^   g&?{?)ֿ)r_   ra   g1!?n)r`   rb   rc   gJeQ8@)g:5?gh~Br?g6t?g>)@) g\c|&ſgDпg^Řj޿g͎TĿgd?g\hSȿg%ſg]Ϳgs
ֿg#E?g lEĿgJX޿gVgYX @g9f4g*8ڔƿg?=xοg#pӤɿg]=0g 9Ep?g^
]пgg	?g%gfYJ3gIȵ?gvLݕ?go1=?g624COgg-?gFkV?gm)g?$D@) gڴ{ɵͿgb.jֿg[tWgFISͿg1
Ƿ?g'qѿg|#6ͿgM3Կgǘ߿g X`?g0~̿g&g]	V9g(Z&?gyxρHg,̰Ͽge\*?տg>pѿg.R\gi 3!?gF[kֿg9Gs?gtg(GgJf?gH`Z?g]y?gc%jg\K?gQlu?g?Vg)% @) gC,cC7g|(Bvg"ǿgg߆?gdءgLT#gmegݳrg\	?ggAGZQȿgs]Կg8*7?gu׿g)s螿gG;ntg=	lgo>;g?grѬlgo[?g\TbοgFXTDg<i?g'?gs(CU?gmmyӿg 7C?gx@e?g>XƆgor?) gBB7?gJ  v?gV!?gn `?g?<?gGء?g#?g:   e?g  r?g>1?g ?g  Q?g  ?gS$?gu?g=|?g t?g.   ?g   <?g  (%?gel?g$  @?g&  f?gTD?g  F?g?g]U?gx?g=?g*  @:@?g   ?gf_l?) gMg)  @Sg|gg?g`
g?*g   KgB  _ g  {!?gB  {g  O3g   g}  Rg4Fg   (gg%  ?	g8  `B?g+  iV?gg  @gIg!  |?gv?:T?g:Tg$  @?g  \g\C?gg  @gٽ?g\ g	~){4rU      gP.@g=x>?g.;TX?g@@g:}3C@)gX@g?g#8@gi3ggs?g4@gnڌUǿg!?g"?g\@g+j0ï6gxZ
)g{'Gؙ?g[?g%I?g++5?)مK4?܈/ ?gK?)?զV?;8?Kр0?)_+_?nbҴ*h?gzu?)=bBW?>/ˍݚ?	R/?)g
\$?g-b6>?gˬ?)gDҵ@?g
|끋?gf·?)gM :>g:B>gz">)g1E2>g@|>g-C6>)g(w?gNS?gt?)g?F>%?g=!+.?gS[E?)g NbUO?gy<?gHnF)?)g%4 ?gck?gmѸ&	?)g0g瀇?gs	@?r   )g)W?gNg\W?r   )r   r   r   )縹t?狹?g&?)x"?Է?gCÖ?)呙
 @y3?gMo?)u7?#?gXF4/?)gc@gՓeV?g(a)@)ghr1?g+n?gԺj?)gݛ@gknA=\?gt @)g5?gqmM_t?g"~?)g!t@gʰ?g"n+T?)g9]@gU?gB!J?)g[ET@gS??g(?)g@
@go
@gyщ?)gBr?@gc~9?r   )gj'@g@r   )?當t?g
3a?)|&?rǆ?g-]4?)݇Xp9?O?g6VD?)t'7?o^?gLA޸?)rf   rg   g <?)rh   ri   u*-?)rk   rl   g=yE7?)rm   rn   g(,?)gSk?gB?g홅sH?)gعX?gSe?g@|k7?)rp   rq   gm?)rr   rs   g0N?)rt   ru   gؚ`?)rv   rw   gx?)g1h'u4?g$?g=?)F= ?Y1׿6?rj   )gX_?g&a}y7g?g?)rm   g!O;ٚ?ro   )gh'u4?g|?g`G?)r   r   r   )g~6K?g^}y7g?gMWE7?)g.V?g)dݲٚ?g9`d,?)rx   ry   g/{UT?)rz   r{   gS"?)r|   r}   gҾ{T?)r~   r   gP1?      )Sr   r   r    r)   r!   resid_pearson	resid_devresid_generalizedr   r9   r(   r'   r*   r+   r/   r0   r,   r.   r-   r3   r4   r5   r8   r6   margeff_nodummy_dydxmargeff_nodummy_dydx_semargeff_nodummy_dydxmeanmargeff_nodummy_dydxmean_semargeff_nodummy_dydxmedianmargeff_nodummy_dydxmedian_semargeff_nodummy_dydxzeromargeff_nodummy_dydxzero_semargeff_nodummy_dyexmargeff_nodummy_dyex_semargeff_nodummy_dyexmeanmargeff_nodummy_dyexmean_semargeff_nodummy_dyexmedianmargeff_nodummy_dyexmedian_semargeff_nodummy_dyexzeromargeff_nodummy_dyexzero_semargeff_nodummy_eydxmargeff_nodummy_eydx_semargeff_nodummy_eydxmeanmargeff_nodummy_eydxmean_semargeff_nodummy_eydxmedianmargeff_nodummy_eydxmedian_semargeff_nodummy_eydxzeromargeff_nodummy_eydxzero_semargeff_nodummy_eyexmargeff_nodummy_eyex_semargeff_nodummy_eyexmeanmargeff_nodummy_eyexmean_semargeff_nodummy_eyexmedianmargeff_nodummy_eyexmedian_semargeff_nodummy_eyexzeromargeff_nodummy_eyexzero_semargeff_nodummy_atexog1margeff_nodummy_atexog1_semargeff_nodummy_atexog2margeff_nodummy_atexog2_semargeff_dummy_dydxmargeff_dummy_dydx_semargeff_dummy_dydxmeanmargeff_dummy_dydxmean_semargeff_dummy_count_dydx_median"margeff_dummy_count_dydx_median_semargeff_dummy_eydxmargeff_dummy_eydx_semargeff_dummy_eydxmeanmargeff_dummy_eydxmean_semargeff_count_dydxmargeff_count_dydx_semargeff_count_dydxmeanmargeff_count_dydxmean_semargeff_count_dummy_dydxoverall"margeff_count_dummy_dydxoverall_semargeff_count_dummy_dydxmeanmargeff_count_dummy_dydxmean_semargeff_dummy_atexog1margeff_dummy_atexog1_semargeff_dummy_atexog2margeff_dummy_atexog2_se
pred_tablerR   s    r
   rP   zSpector.logit  sk   kk& & &
 KJJLLLKKKKKK	M
 ONN5 5 5! ! !!7 !7 !7 8          B 8          B $&
"(+!!FFFx !X!	#
 KJJ$? $? $? &D&D&D#(? (? (?$*G*G*G'*> *> *>&,J,J,J)(? (? (?$*H*H*H'$? $? $? &D&D&D#(? (? (?$*H*H*H')N)N)N&,B,B,B) (1yy$*3))'$? $? $? &C&C&C#(> (> (>$*H*H*H'*> *> *>&,J,J,J)(> (> (>$*H*H*H'$? $? $? &C&C&C#(? (? (?$*H*H*H')N)N)N&,I,I,I)'0yy$*3))''> '> '>#)F)F)F&'> '> '>#)F)F)F&"? "? "?$B$B$B!&> &> &>"(E(E(E%/F /F /F+23 23 23."? "? "?$A$A$A!&> &> &>"(E(E(E%( "M!L!L$H$H$H!&3 &3 &3"(E(E(E%
/A /A /A+2< 2< 2<.,? ,? ,?(/< /< /<+%= %= %=!'D'D'D$%6 %6 %6! (E'D'D$ B7QF"344
r	   c                     t                      } d| _        g d| _        g dg dg dg dg| _        g d| _        d| _        d	| _        d
| _        d| _        d| _	        d| _
        d| _        d| _        d| _        g d| _        ddgddgddgddgg| _        g d| _        g d| _        t%          j        g d          | _        g d| _        d | _        g d| _        t%          j        dd
gd
d gg          | _        | S )!NrX   )gQ?gZ5{7|?gA?gUI-)g)Qs?n^c?uK)r   g/n|?՚Z?d?\Nv湿)r   r   gƿ?BUÈ)r   r   r   gdoN@)g,I4?gҴy?g


?g=hV@g|0:)rd   rU   re   gdz/@g/ƙ(?g]6|W?g	r>@@g1C@)g_|@gA5@g?g
:%-@g}ηrgW<H?g{,}@gIqټgՊTԪ?g
|$?g!X4@g;ǀ(g=))gMuϕ?gw3?g?gK;Զk?) gEQW?gS^-?g<GO?gQ§2?g?g݋yg?g xq?gҦ?g6
ڻ?gH8?gf%}?gdvqv?g7h?gQ?gL+H?g 
~?gu+:H>e?g({?g&?g"<?gm\!?g~Z?g_[C{?gO?g_?gjIG?g?g2DQ?gj?g\٪x?gC5%YG?gI_?) gߣ gg  g+  t g??g   g? g_2gg  ?g"g  gVݿg|g_׿g5  `5 g/  g?gzB??gK  `.?gj   ڞg?g   WMgg   h?g  `h?g `gZ?g  cܿg?+?g  ?ge @S?g!  ) g]ȿgji>#տggQȿgL_?g@<οg&ȿgۙSӿgsX~*޿gDNc?gPۆQǿg_g!AHg-?gnx	g"_H=ʿgOEӿgпg&wgLK1R?g{ֿgxͫ:?g:0oIgCgqD?g5C(^%?g0?gcg%P6?g^?g"07g7/N\ @) gyY|Eg!=g!oտgl<bg?gQhYg?gc3g9ʿgG6u?g0kgi:տgݯg`-?g`g`̖pgj	g0eg)rg4+ۇ?g[Og, ?goDIݿgH'g?gֈ`?g1?g
<g:vP?g
<I?gs9>Zg"4q?r   r   )r   r   r    r)   r!   r*   r+   r/   r0   r,   r.   r-   r3   r4   r5   r8   r6   r(   r   r9   r'   r   r   r   r   rR   s    r
   rV   zSpector.probit  s|   kkI I I
 IHHHHHIIIJJJ	L
 ONN#&
"(+!!EEEx !x 	"	$
 JII   8          B! ! ! !!" !" !" B7QF"344
r	   N)r   r   r   __doc__r   rP   rV   r   r	   r
   r[   r[     sg           L L L\ EGGE\ \ \| VXXFFFr	   r[   c                   .   e Zd ZdZd Zd Z e            Zd Z e            Zd Z e            Zd Z e            Zd Z	 e	            Z	d Z
 e
            Z
d	 Z e            Zd
 Z e            Zd Z e            Zd Z e            Zd Zd Zd ZdS )RandHIEz(
    Results obtained from Stata 11
    c                     d| _         d S )NN  r   r   s    r
   r   zRandHIE.__init__1  s    			r	   c                     t                      } d| _        g d| _        d | _        g d| _        t          j        t          j        	                    t          d          d          }|d d df         | _        |d d df         | _        d	| _        d
| _        d| _        | j        | j        z
  dz
  | _        d| _        d| _        d| _        d| _        d| _        g d| _        ddgddgddgddgddgddgddgdd gd!d"gd#d$gg
| _        g d%| _        g d&| _        g d'| _        g d(| _        g d)| _        t          j        t          j        	                    t          d*          d          | _        | S )+Nr   )
gj媿gIϿg !&?g$gc?gv`?g7eg}WE?g&a?g.oJi?)
g1)g?gpjo?gRl]?glZ?glZ?g̈B?g?g۲Z?g 0?gMs܆?zyhat_poisson.csvr   r   r      gcGrzg 1rE	   gؗ@g_=?g2ZGղ{@gei礀@)
g^O$T72giЮE7gCM3@gLSp5gN36@gñN@gzągJ"?@gM~_@g؎H^O@gʭg gO@n6%ѿguih̿g O;?gZY@?gIyRgNugzyy?gp?giZZϠ?g'?g|Sg>Âv?gn?gL(?gf7?g|N|?g?p'?gڸЄ?)
g~8c0gx.5'gLuG9q0.gŚ^r*g9mdUi)r   g9-p?g|z&;?gG۟|<r   )	|'Ǩ#<ÿg_AMgk29׹?+@Qg?Ѳڸ?gݽjUygb:?g@ԬS?)	N}?g־?<Rѝ}u???Tfr?gb׊A ?lQnH[?g;̀?gHl?g
@We?)	r   g:og29׹?r   gj?r   gO&g "?gw?)	r   gD&?>?r   r   gdA ?r   gk?gt~l?g7X@?zpoisson_resid.csv)r   r   r    r)   r!   r   r"   r#   r$   r%   r&   r(   r'   r*   r+   r/   r0   r,   r.   r-   r3   r4   r5   r8   r6   margeff_dummy_overallmargeff_dummy_overall_semargeff_nodummy_overallmargeff_nodummy_overall_serC   )rD   predicts     r
   poissonzRandHIE.poisson4  s   kk9 9 9
   
 *RW\\'3EFF'*, , ,111a4=111a4="%
x#,.2#)   	"$	"$	"	"#	"	"	"
$F F F% % %!(6 (6 (6$' ' '#* * *& Jrw||G5HII),. . .	
r	   c                  t   t                      } d| _        g d| _        d| _        d| _        g d| _        g d| _        g d| _        g d| _        d	| _	        d
| _
        d| _        ddgddgddgddgddgddgddgddgddgddgd d!gg| _        d"| _        d#| _        d$| _        d%| _        d&| _        d'| _        | S )(Nr   )gkL9g!o#ѿg?gUv4Ȇg/5?g2?g1ngfa9?gwIk?g;?gJb?g>G.z?g+wbq?)g,'x?g^L'?g]	jp?g)7l?gP9aN?gqaUW?gǐzj?g3Y?gN?gRᢙ?gWr?)
gHc#gi;T'gkLR$@g9gT$&g;~P!@gfF:@g>}gңV?g	1~r6@gNI4:@)
gWͳd;g5*c^9gX;gW>w8+:g[B%<g[c?g?gn8f0+?g.-I?gtd#Z)
e«?r   r   r   r   *H97?r   r   r   r   g!/U0@iN  r   g8y㱿g.~	ˎg+(ӿg".l̿gymۜ?gg)YNB?gծgK	wg}G£?gi\?gI]M?g4?gwR	\g8sg٢@pgpf?gRy=?g>۴c?g+ ?gCfx?glf?gfvG?gG5@F=-g|@g!/.      "@rJ   )r   r   r    lnalpha_std_errlnalphar!   r5   r6   fittedvaluesr3   r0   r/   r8   r4   r+   r,   r*   r-   rR   s    r
   negativebinomial_nb2_bfgsz!RandHIE.negativebinomial_nb2_bfgs  s.   kk  
 '$  0 0 0
7 7 7   ' ')4&)4%73&)4%(3%(3&)4&84%(3%(3%x0
 '*
#$
r	   c                     t                      } d| _        g d| _        d| _        d| _        g d| _        g d| _        ddgd	d
gddgddgddgddgddgddgddgddgddgg| _        d| _        d| _	        d| _
        d | _        d!| _        d"| _        d#| _        d$| _        g d%| _        d&d'gd(d)gd*d+gd,d-gd.d/gd0d1gd2d3gd4d5gd6d7gd8d9gd:d;gg| _        g d<| _        | S )=Nr   )g7ˡgVwoҿgZw?g!q=fgm5fg?gGzQ?gZAgJ ֨gȇ)џ?gx(;?gO'e@gƧE?gK K?)gfˊu?gtH	1,?gsRÓk?g'+|h?g<=^?g,I
Q?g<a?gㄞ?g8߅?g6RQ?g. ?)gnO^(g{.g3(@gfaH%g9ؙ	 @gBs'=@gw?YOgL8ga @gύ[A@gџ
M@g>ehgB<gjտgLPyпg?g;q+s?gmgqbŚgm#t?gake?gzfw?gRc?g8ⰿgK?<g²	\gL^?g.%?s?gs .?gQ@gHrh@gW]2?gQʪ?gK52!r   g}%Ĝ@gK528#@gkߨ(@rJ   r        @)g*T^8g2R-d5gJ>18g:gc9<g/rvgfF1F'?gӉϺ?g:9ݤ?g:0'rJ   gC,ig/g|#_jտg>myпgZ/ɷ?g|#u?g'kgIg^`n?gQ`?gV
l){?gae?g0氿gTI~?g{`_g'3K?gV{Wr?g&7?gv?gSf?gQI@g@)
牬!(?r   r   r   r   n&|9?r   r   r   r   )r   r   r    r   r   r!   r5   r8   r*   r+   r,   r3   r4   r-   r/   r0   r6   r   rR   s    r
   negativebinomial_nb1_bfgsz!RandHIE.negativebinomial_nb1_bfgs  s    kk) ) )
 %)     
 
 
 =)=),'=),','=)<(,',',') %&
#&&A A A 8$)$(#)$(#(#)$8$(#(#(#%   
r	   c                  D   t                      } d| _        g d| _        g d| _        g d| _        g d| _        d| _        d| _        d| _        d	| _	        d
| _
        d| _        d| _        d| _        g d| _        ddgddgddgddgddgddgddgddgdd gd!d"gg
| _        | S )#Nr   )
g$HggӇoѿgMX?g,#yng4?g
x?g9S-gB^&Ǔ?g-?gS6E?)
g%6hv?gb`?gfn?g;Ui?gL2;?gGPmU?gcU?gmd?ghS?g}a
?)
g	E:g:Q>&8g,QH]:gO8gwۇ\ >;gΔnPgκ[t?gjY?gdR{?gYR:FC)
gpͺ$g^L{)gb3K%@gE!(gBjEa8#@gmc<@ggGv?gέ֩@gO|=@gb	C@g+H@r   r   g>hBg-Tg`yHX@r   )
.\6x?r   r   r   r   ɏk?r   r   r   r   gpb"gh9ugӿgBK̿gR%)?g?ǧDgvyejTgjDԢ?gջˇ?gȷl$?g*ˤ?gpu+gd];~g,Ԍ5g7rY}\?gꢕ9e?gàe@?g@)?gf{?)r   r   r    r!   r6   r5   r3   r4   r/   r0   r*   r+   r,   r-   r   r8   rR   s    r
   negativebinomial_geometric_bfgsz'RandHIE.negativebinomial_geometric_bfgs"  s   kk  
    
+ + + %$$(
$$ $ $
 +&+&*%+&*%*%+&:&*%*%
' 
r	   c                     t                      } d| _        d| _        g d| _        d| _        d| _        g d| _        d| _        d| _        d	d
gddgddgddgddgddgddgddgddgddgddgg| _	        d| _
        d | _        d!| _        | S )"Nr   gJ')g=gzѿgScn?gԨ+CgP gWy?g%2o?g;bKg`}Tg5]t?gQ*:?g9-
n?gKl?gN)gYZy?gd?g5$S.r?gqem?gT
?gǕ@?[?gs?gE2?go{?g`?g{ڥw?r   g=J-)@g!㨲g0giGyԿg[ZzͿg^r?gy?g4ԧgJ³g?v?gW4?gWNΒâ?g4<l?gE.۱gK2z>̌g	쳿gLJI(K?gGg7;)?gm6VA0?g.?2{?g<?g[Ihd?gDE-Y.@gMWEVgEuْ@)r   r   r*   r    r   r   r!   r/   r3   r8   r4   wald_pvaluewald_statisticrR   s    r
   generalizedpoisson_gp2zRandHIE.generalizedpoisson_gp2Q  s    kk$N N N
 ( 6 6 6 !+&+&*%+&*%*%+&:&:&*%*%
 "+-
r	   c                      t                      } d| _        g d| _        d| _        g d| _        ddgddgd	d
gddgddgddgg| _        d| _        d| _        | S )Nr   )g6 w?gbXgL
g?g斱TpgC·?gO)g?]?ga]A?gr{?w^?Ge"W?gL0k?g;֙t?g6uy?gxog@Cgu-kgtE)!XUg֦t?g??gEg˚g8Kr?g<?gww@gffffn@r   r   r    r*   r!   r8   r3   r4   rR   s    r
   zero_inflated_poisson_logitz#RandHIE.zero_inflated_poisson_logitt  s    kk+ + +
$) ) ) #####"$ 
r	   c                      t                      } d| _        g d| _        d| _        g d| _        ddgddgd	d
gddgddgddgg| _        d| _        d| _        | S )Nr   )gN.!z߯?g=glz	g)?g{Un3pgyȷ?g)gngs?go#?g|ҔS?r   r   g=P?gZf5?gO[?gagg*fD"g)(igydbRgUt?gX	?gEg&:gԕr?gl?g@gy@r   rR   s    r
   zero_inflated_poisson_probitz$RandHIE.zero_inflated_poisson_probit  s    kk+ + +
' ' ' "##"#!# 
r	   c                      t                      } d| _        g d| _        d| _        g d| _        ddgddgd	d
gddgddgddgg| _        d| _        d| _        | S )Nr   )ghP~z?gcAaPQg gΟg;Ѻ?ghzjg/oj?g
ףpk)g2?gcpp?g2?g̴X^?gch+3W?g`?gיtPӶ?gpĤ	?gT8T
gΨ*gk%Qg1iBI7g:?gD;?g{Y}a蟿gVW9g !J?g:?g̴l@g̬o@r   rR   s    r
   zero_inflated_poisson_offsetz$RandHIE.zero_inflated_poisson_offset  s    kk+ + +
' ' ' "	"#"# " 
r	   c                  p    t                      } d| _        g d| _        d| _        g d| _        d| _        | S )Nr   )ggC@g=1g Ac]˿gV?gag6vꭁ?g?g3333M)gfӓ?gAJi{@ghW!'?g#EdXk?gxĬg?gJ4?gT[r?iT )r   r   r    r*   r!   r3   rR   s    r
   !zero_inflated_generalized_poissonz)RandHIE.zero_inflated_generalized_poisson  sK    kk2 2 2
. . .
r	   c                  b    t                      } g d| _        d| _        g d| _        d| _        | S )N)g{gUI$?g}KЏ$g)5ʿgje/5?ggW?gQ)gN@a?g?ܵ?gZM?goG8-xч?gVE?g\\@)r   r    r*   r!   r3   rR   s    r
   zero_inflated_negative_binomialz'RandHIE.zero_inflated_negative_binomial  s8    kkJJJ
???
r	   c                     g d| _         d| _        g d| _        ddgddgdd	gd
dgddgg| _        d| _        d| _        d S )N)gD</?gW\T+gPѢVx?g| [?gt=Q@gHz)gINq?g[/ɷ-?g#&f?guk>c?g)*H:?gbLgAh?gٳB쟿g`fN~?gѾ">?g
4G_?gd-O1hg7	＞y?g):@g#ݯ@gHz.@gz@r    r*   r!   r8   r3   r4   r   s    r
   truncated_poissonzRandHIE.truncated_poisson  sh    IIIDDD#h/#h/#h/#h/"X.	0
 r	   c                     g d| _         d| _        g d| _        ddgddgdd	gd
dgddgg| _        d| _        d| _        d S )N)g{)gղHhg,q?gemg|ds<?gK[)g7Emh?g;v?g9~4bf_?gqZ?gxj?g􃏿g
RςPng}鸿gsZϫgj1q?gaO#?gշg__R#gy"p?g 	?g(\@gףp=V@r  r   s    r
   zero_truncated_poissonzRandHIE.zero_truncated_poisson  sh    HHHEEE#Z0#Z0#i0#Y/"h/	1
 r	   c                 T    g d| _         d| _        g d| _        d| _        d| _        d S )N)g1s[gLAgp&
2?g<?g`
@i)g!rz~?gռ?gL4HSu?gN$?gޣHb?gz@gHz6@)r    r*   r!   r3   r4   r   s    r
   zero_truncted_nbpzRandHIE.zero_truncted_nbp  sA    / / /  r	   N)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r  r   r	   r
   r   r   -  s          I I IV giiG? ? ?B !: 9 ; ;Z Z Zx !: 9 ; ;+ + +Z 'F&E&G&G#  B 4355  & #>"="?"?  & $@#?#A#A   & $@#?#A#A 	 	 	 )J(I(K(K%   'F&E&G&G#
 
 

 
 
    r	   r   )r   r#   numpyr   r   r$   abspathdirname__file__r&   r   rG   r[   r   r   r	   r
   <module>r     s@    
			    	 	 	 	 	 	 	 	 '//"'//(33
4
4b* b* b* b* b* b* b* b*Jy y y y y y y yxu u u u u u u up| | | | | | | | | |r	   