
    !gv                     F   d Z ddlZddlmZ ddlZddlmZm	Z	m
Z
 ddlmZmZmZmZmZ ddlmZ  G d d      Z G d	 d
e      Z G d de      Z G d de      Z G d de      Z G d d      Z G d d      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Zd Zd  Z  e       Z!d!e!_"        d"e!_#         ejH                  d#d$g      e!_%         ejH                  d%d&g      e!_&        de!_'        d'e!_(        d(e!_)        d)e!_*         e       Z+d!e+_"        d*e+_#         ejH                  ejX                  d+g      e+_%         ejH                  d%d&g      e+_&        de+_'        d,e+_(        d(e+_)        d)e+_*         e       Z-d!e-_"        d-e-_#         ejH                  d.ejX                  g      e-_%         ejH                  d%d&g      e-_&        de-_'        d/e-_(        d(e-_)        d)e-_*         e       Z.d0e._"        d1e._#         ejH                  d#d$g      e._%         ejH                  d%d&g      e._&        d2e._'        d'e._(        d(e._)        d)e._*         e       Z/d0e/_"        d3e/_#         ejH                  d.ejX                  g      e/_%         ejH                  d%d&g      e/_&        d2e/_'        d/e/_(        d(e/_)        d)e/_*         e       Z0d4e0_"        d5e0_#         ejH                  ejX                  d+g      e0_%         ejH                  d%d&g      e0_&        d6e0_'        d,e0_(        d(e0_)        d)e0_*         e       Z1d7e1_"        d8e1_#         ejH                  d9d:g      e1_%        d%e1_&        d;e1_'        d'e1_(        d<e1_)        d=e1_*         e       Z2d>e2_"        d?e2_#         ejH                  ejX                  d@g      e2_%        d%e2_&        dAe2_'        d,e2_(        d<e2_)        d=e2_*         e       Z3d7e3_"        dBe3_#         ejH                  dCejX                  g      e3_%        d%e3_&        d;e3_'        d/e3_(        d<e3_)        d=e3_*         e       Z4dDe4_"        dEe4_#         ejH                  dFdGg      e4_%         ejH                  d%d&g      e4_&        de4_'        d'e4_(        dHe4_5        d(e4_)        d)e4_*         e       Z6dDe6_"        dIe6_#         ejH                  ejX                  dJg      e6_%         ejH                  d%d&g      e6_&        de6_'        d,e6_(        dHe6_5        d(e6_)        d)e6_*         e       Z7dDe7_"        dKe7_#         ejH                  dLejX                  g      e7_%         ejH                  d%d&g      e7_&        de7_'        d/e7_(        dHe7_5        d(e7_)        d)e7_*        dMdNdOdPZ8 G dQ dR      Z9dS Z:dT Z;dU Z<y)Va  tests for weightstats, compares with replication

no failures but needs cleanup
update 2012-09-09:
   added test after fixing bug in covariance
   TODOs:
     - I do not remember what all the commented out code is doing
     - should be refactored to use generator or inherited tests
     - still gaps in test coverage
       - value/diff in ttest_ind is tested in test_tost.py
     - what about pandas data structures?

Author: Josef Perktold
License: BSD (3-clause)

    N)stats)assert_assert_almost_equalassert_allclose)DescrStatsWCompareMeans	ttest_indztestzconfint)Holderc                   T    e Zd Zed
d       Zedd       Zd Zd Zd Zd Z	d Z
d Zy	)CheckExternalMixinc                 P    t        | j                  | j                  |      | _        y )N)r   dataweightsdescriptive)clsddofs     e/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/statsmodels/stats/tests/test_weightstats.pyget_descriptivesz#CheckExternalMixin.get_descriptives   s    %chhTB    c                    t        j                  t        j                  t	        | j
                                    }| j
                  |d<   | j                  j                  dk(  r| j                  |d<   nCt        | j                  j                  d         D ]  }| j                  d d |f   |d|dz   z  <     |j                  |       y )N)indexr      data1zdata%d)pd	DataFramenparangelenr   r   ndimrangeshapeto_csv)r   fnamedfks       r   	save_datazCheckExternalMixin.save_data$   s     \\		#ckk*: ;<988==A((BwK388>>!,- 8),!Q$8q1u%&8
		%r   c                 `    | j                   j                  }t        || j                  d       y N-C6?rtol)r   meanr   )selfmns     r   	test_meanzCheckExternalMixin.test_mean0   s#    ""DIID1r   c                 `    | j                   j                  }t        || j                  d       y r*   )r   sumr   )r/   sms     r   test_sumzCheckExternalMixin.test_sum4   s#    !!DHH40r   c                 `    | j                   j                  }t        || j                  d       y r*   )r   varr   )r/   r7   s     r   test_varzCheckExternalMixin.test_var8   #    ""TXXD1r   c                 `    | j                   j                  }t        || j                  d       y r*   )r   stdr   )r/   r;   s     r   test_stdzCheckExternalMixin.test_std=   r9   r   c                 z    t        | d      sy | j                  j                  }t        || j                  d       y )Nsemr+   r,   )hasattrr   std_meanr   r>   )r/   r>   s     r   test_semzCheckExternalMixin.test_semB   s2     tU#''TXXD1r   c                 $   t        j                  | j                  t         j                        }dD ]\  }| j                  j                  | j                  |      }t        j                  |t         j                        }t        ||d       ^ y )N)dtype)FT)return_pandasr+   r,   )r   asarray	quantilesfloat64r   quantilequantile_probsr   )r/   quantrD   qtls       r   test_quantilesz!CheckExternalMixin.test_quantilesJ   sp    

4>><( 	3M""++D,?,?:G , IC**S

3CCT2		3r   N)r   )zdata.csv)__name__
__module____qualname__classmethodr   r(   r1   r5   r8   r<   rA   rL    r   r   r   r      sH    C C 	 	212
2
23r   r   c                   J    e Zd ZdZdZdZdZej                  d   Z	e
d        Zy)TestSim1g(?geڣ")@gGĔH?g|~?)g}\*gI2gY?gg~5?g(rwy@c                 *   t         j                  j                  d       t         j                  j                  d      | _        t         j                  j                  ddd      | _        t         j                  d   | _        | j                          y )N5    sizer      r   g?      ?g      ?r   
r   randomseednormalr   uniformr   r_rI   r   r   s    r   setup_classzTestSim1.setup_class]   sf    
		w99###,ii''12'6UU#78r   NrM   rN   rO   r.   r3   r7   r;   r   ra   rF   rP   rc   rQ   r   r   rS   rS   S   s9     D
C
C
CCDI r   rS   c                   J    e Zd ZdZdZdZdZej                  d   Z	e
d        Zy)	TestSim1tgOA4@gޭ,Yc@g.B@#@g~C	@)r   r         	   c                    t         j                  j                  d       t         j                  j                  ddd      | _        | j                  dd | j                  dd | j                  dd | j                  d	d t         j                  j                  dd
d      | _        t         j                  d   | _        | j                          y )NrU   r   
   rV   rW   rg            rY   rZ   )
r   r]   r^   randintr   r`   r   ra   rI   r   rb   s    r   rc   zTestSim1t.setup_classp   s    
		w99$$Q$4((1Q-B((2b/Bii''12'6UU#78r   Nrd   rQ   r   r   rf   rf   f   s8     D
C
C
Cm$I r   rf   c                   N    e Zd ZdZdZdZdZdZej                  d   Z
ed        Zy)		TestSim1ng	ԿgXhg?g?gpA.?)g&jjg	3mJgN],Ͽgŏ1w?g6v?c                    t         j                  j                  d       t         j                  j                  d      | _        t         j                  j                  ddd      | _        | xj                  d| j                  j                         z  z  c_        t         j                  d   | _	        | j                  d       y )Ni  rV   rW   r   rY   rZ   r   )r   r]   r^   r_   r   r`   r   r3   ra   rI   r   rb   s    r   rc   zTestSim1n.setup_class   s    
		t99###,ii''12'6rCKKOO---UU#78Qr   N)rM   rN   rO   r.   r3   r7   r;   r>   r   ra   rF   rP   rc   rQ   r   r   rq   rq   {   s>    
 D
C
C
C
CDEI   r   rq   c                       e Zd ZddgZddgZddgZddgZ ej                  ej                  d	   ej                  d
   f      Z
ed        Zy)TestSim2ggs˿g}#;οg݀Zggbc?gă?g<O?g!I.?)g뭁lg';zgOeg!u?gCԷL@)gtgeI)vgJ)Ŀg4k?gtv28J?c                 *   t         j                  j                  d       t         j                  j                  d      | _        t         j                  j                  ddd      | _        t         j                  d   | _        | j                          y )Ni  )rV      rW   r   rY   rV   rZ   r\   rb   s    r   rc   zTestSim2.setup_class   sf    
		t99###1ii''12'6UU#78r   N)rM   rN   rO   r.   r3   r7   r;   r   column_stackra   rF   rP   rc   rQ   r   r   rt   rt      sq     
#Dz
"Cz
"Cj
!C	=	>	=	>	@AI  r   rt   c                   @    e Zd Zed        Zd Zd Zd Zd Zd Z	d Z
y)	TestWeightstatsc                 H   t         j                  j                  d       d\  }}d\  }}|t         j                  j                  |      z   }|t         j                  j                  |      z   }|t         j                  j                  |d      z   }|t         j                  j                  |d      z   }t         j                  j	                  dd|      }	t         j                  j	                  dd|      }
||c| _        | _        |	|
c| _        | _        ||c| _	        | _
        y )NrU   rV   rV   r   g333333?rY   r      )r   r]   r^   randnro   x1x2w1w2x1_2dx2_2d)r   n1n2m1m2r   r   r   r   r   r   s              r   rc   zTestWeightstats.setup_class   s    
		wBB"))//"%%"))//"%%RYY__R++RYY__R++YYqB'YYqB'RR$e	39r   c           	         | j                   | j                  }}| j                  | j                  }}dt	        j
                  t        |            z  }dt	        j
                  t        |            z  }t        |      }t        t        ||||f      d d t        j                  t        j                  ||f   t        j                  ||f                y )Ng       @r   rv   )r   r   r   r   r   onesr    r   r   r	   r   ra   )r/   r   r   r   r   w1_w2_d1s           r   test_weightstats_1z"TestWeightstats.test_weightstats_1   s    $''B$''B2773r7##2773r7##_ 	Ib"sCjA"1E!OOBEE"b&M255R=I	Kr   c                 V   | j                   | j                  }}| j                  | j                  }}t	        |      }t	        ||      }t	        ||      }|j                         }|j                         }	t        t        ||||f      d d t        j                  ||	      d       t        |	j                  d      |j                  d       t        |	j                         |j                  d       t        |	j                         |j                  d       t        t        j                  |	d      |j                  d       t        |j                  d      d d t        j                  |d      d       t        |j                  d      d d t        j                  |d      d       y )	Nr   rv      r   r   biasrY      )r   r   r   r   r   	asrepeatsr   r	   r   r.   r7   r;   r   cov
ttest_meanttest_1samp)
r/   r   r   r   r   r   d1wd2wx1rx2rs
             r   test_weightstats_2z"TestWeightstats.test_weightstats_2   sC   $''B$''B_"b)"b)mmommo 	Ib"r2h?C!OOC5r	; 	CHHQK26CGGIsww3CGGIsww3BFF3Q/"= 	BMM!,Ra0%2C2CB2JBOCNN1-bq1!--c15r	;r   c                    | j                   | j                  }}| j                  | j                  }}t	        ||      }t	        ||      }|j                         }|j                         }t        |j                  d      |j                  d       t        |j                  d      |j                  d       t        |j                  d      |j                  d       t        t        j                  |j                  d      |j                  d       t        t        j                  |j                        |j                  d       |j                  d      \  }	}
}t        |	|
gt        j                   |d      d       t#        ||      }|j%                         }t        j$                  ||      }t        |d d |d       y )	Nr   r   r   r   r   rY   r   rv   )r   r   r   r   r   r   r   r.   r7   r;   r   r   Tcorrcoefr   r   r   r   r	   )r/   r   r   r   r   d1w_2dd2w_2dx1r_2dx2r_2dtpdcmressmressss                  r   test_weightstats_3z"TestWeightstats.test_weightstats_3   sJ   zz4::u$''BUB/UB/!!#!!#FKKNFKK<FJJqM6::r:FJJqM6::r:BFF688!4fjj"EBKK16??BG
 ##A&1aQFE$5$5fa$@"E&&)/E"1Iub1r   c                 Z   | j                   }| j                  }t        ||d      }t        ||d      }t        ||d      }|j                         }|j                         }|j                         }t	        t
        j                  |   t
        j                  |   d       t	        t
        j                  |   t
        j                  |   d       |j                  d      }|j                  d      }|j                  d      }t	        t
        j                  |   t
        j                  |   d       t	        t
        j                  |   t
        j                  |   d       |j                         }|j                         }|j                         }t	        ||d       t	        ||d       y )Nr   r   r   r   rv   r   r[   )r   r   r   r   r   r   ra   tconfint_mean)	r/   r   r   d1w_d0d1w_d1d1w_d2res0res1res2s	            r   test_weightstats_ddof_testsz+TestWeightstats.test_weightstats_ddof_tests  sP    

WWUBQ7UBQ7UBQ7   "  "  "BEE$Ktb9BEE$Ktb9  %  %  %BEE$Ktb9BEE$Ktb9 ##%##%##%D$+D$+r   c                    | j                   | j                  }}t        |      }t        |      }t        ||      }ddlm} dD ]1  }dD ]*  }|j                  ||      }	t        t        |	|             , 3 t        j                  ||      }
t        t        |j                               t        |
j                               k(         y Nr   )SimpleTable)TF)pooledunequal)use_tusevar)r   r   r   r   statsmodels.iolib.tabler   summaryr   
isinstance	from_datastrr/   r   r   r   d2cm1r   r   r   smrycm2s              r   &test_comparemeans_convenient_interfacez6TestWeightstats.test_comparemeans_convenient_interface+  s    zz4::u2r" 	8" 	7E/ 7{{v{>
4567	7 $$UE2CKKM"c#++-&889r   c                    | j                   | j                  }}t        |      }t        |      }t        ||      }ddlm} dD ]1  }dD ]*  }|j                  ||      }	t        t        |	|             , 3 t        j                  ||      }
t        t        |j                               t        |
j                               k(         y r   )r   r   r   r   r   r   r   r   r   r   r   r   s              r   )test_comparemeans_convenient_interface_1dz9TestWeightstats.test_comparemeans_convenient_interface_1d<  s    wwu2r" 	8" 	7E/ 7{{v{>
4567	7 $$UE2CKKM"c#++-&889r   N)rM   rN   rO   rP   rc   r   r   r   r   r   r   rQ   r   r   ry   ry      s5    , ,K$!;F2@,>:":r   ry   c                   $    e Zd Zd Zd Zd Zd Zy)CheckWeightstats1dMixinc                    | j                   }| j                  }t        |j                  d      |j                  d       t        |j	                  d|j
                        |j                  d       t        |j                  d|j
                        |j                  d       |j                  d      }t        |j	                  dd      |d       |j                  d      }t        |j                  dd      |d       t        t        j                  |j                  d|j
                  z
        |j                  d       y )Nr   r   )r   r   r   )r   r   r   r.   r7   r   r;   var_ddofstd_ddofr   r   r   )r/   r   r   var1std1s        r   
test_basicz"CheckWeightstats1dMixin.test_basicQ  s    hhhhCHHQK26CGGACHHG5swwCCGGACHHG5swwC|||#CGGAAG.b9|||#CGGAAG.b9BFF355qz:CGGRHr   c                     | j                   }| j                  }t        |j                  d      d d t	        j
                  |d      d       y )NrY   rv   r   )r   r   r   r   r   r   r/   r   r   s      r   
test_ttestz"CheckWeightstats1dMixin.test_ttesta  s@    hhhhCNN1-bq1!--c15r	;r   c                    | j                   | j                  }}| j                  | j                  }}| j                  | j
                  }}t        j                  ||      }t        t        ||||f      d d |d       t        t        ||d      t        ||d            }t        |j                         d d |d       t        t        ||d      t        ||d            }t        |j                         d d |d       t        t        ||d      t        ||d            }	t        t        ||d      t        ||d            }
t        t        ||d      t        ||d            }|	j                  d      }|
j                  d      }|j                  d      }t        ||d       t        ||d       |	j                  d	      }|
j                  d	      }|j                  d	      }t        ||d       t        ||d       |	j                  d      }|
j                  d      }|j                  d      }t        ||d       t        ||d       y )
Nr   rv   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r	   r   r   r   tconfint_diff)r/   r   r   r   r   r   r   res_spr   cm0r   r   r   r   r   s                  r   test_ttest_2samplez*CheckWeightstats1dMixin.test_ttest_2samplek  s4   $''B88TXXS$''B c*Ib"r2h?C"B	( +b"1=%b"1=?BLLN2A.;+b"1=%b"1=?BLLN2A.;;r2A>&r2A>@;r2A>&r2A>@;r2A>&r2A>@ }}I}.}}I}.}}I}.D$+D$+    1   1   1D$+D$+  	 2  	 2  	 2D$+D$+r   c                    | j                   }d}|j                         \  }}|j                  |      \  }}}t        ||t	        j
                  |j                        z  d       |j                  |      \  }}}t        ||t	        j
                  |j                        z  d       |j                  t	        j                  ||f            \  }}}t        ||t	        j
                  |j                        z  d       y )Ng?rh   )r   r   r   r   r   r   r#   vstack)r/   r   alphalowuppr   r   r   s           r   test_confint_meanz)CheckWeightstats1dMixin.test_confint_mean  s    hh$$&S..%1aAurwwqww'77;..%1aAurwwqww'77;..C:!671aAurwwqww'77;r   N)rM   rN   rO   r   r   r   r   rQ   r   r   r   r   O  s    I ;+,Z
<r   r   c                       e Zd Zd Zy)CheckWeightstats2dMixinc                     | j                   }| j                  }t        t        j                  |j
                        |j                  d       y )Nr   )r   r   r   r   r   r   r   s      r   	test_corrz!CheckWeightstats2dMixin.test_corr  s1    hhhhBKK.bAr   N)rM   rN   rO   r   rQ   r   r   r   r     s    Br   r   c                       e Zd Zed        Zy)TestWeightstats1d_ddofc                 j   t         j                  j                  d       d\  }}d\  }}|t         j                  j                  |d      z   }|t         j                  j                  |d      z   }t         j                  j	                  dd|      }t         j                  j	                  dd|      }||c| _        | _        ||c| _        | _        t        ||d      | _
        t        ||d      | _        | j                  j                         | _        | j                  j                         | _        y )NrU   r{   r|   r   r}   r   r   r]   r^   r~   ro   r   r   r   r   r   r   r   r   r   r   	r   r   r   r   r   r   r   r   r   s	            r   rc   z"TestWeightstats1d_ddof.setup_class      
		wBB"))//"a(("))//"a((YYq!R(YYq!R(RRb"15b"15''##%''##%r   NrM   rN   rO   rP   rc   rQ   r   r   r   r         & &r   r   c                       e Zd Zed        Zy)TestWeightstats2dc                 f   t         j                  j                  d       d\  }}d\  }}|t         j                  j                  |d      z   }|t         j                  j                  |d      z   }t         j                  j	                  dd|      }t         j                  j	                  dd|      }||c| _        | _        ||c| _        | _        t        ||      | _
        t        ||      | _        | j                  j                         | _        | j                  j                         | _        y )NrU   r{   r|   rY   r   r}   r   r   r   s	            r   rc   zTestWeightstats2d.setup_class  s    
		wBB"))//"a(("))//"a((YYq!R(YYq!R(RRb"-b"-''##%''##%r   Nr   rQ   r   r   r   r     r   r   r   c                       e Zd Zed        Zy)TestWeightstats2d_ddofc                 j   t         j                  j                  d       d\  }}d\  }}|t         j                  j                  |d      z   }|t         j                  j                  |d      z   }t         j                  j	                  dd|      }t         j                  j	                  dd|      }||c| _        | _        ||c| _        | _        t        ||d      | _
        t        ||d      | _        | j                  j                         | _        | j                  j                         | _        y )NrU   r{   r|   rY   r   r}   r   r   r   s	            r   rc   z"TestWeightstats2d_ddof.setup_class  r   r   Nr   rQ   r   r   r   r     r   r   r   c                       e Zd Zed        Zy)TestWeightstats2d_nobsc                 j   t         j                  j                  d       d\  }}d\  }}|t         j                  j                  |d      z   }|t         j                  j                  |d      z   }t         j                  j	                  dd|      }t         j                  j	                  dd|      }||c| _        | _        ||c| _        | _        t        ||d      | _
        t        ||d      | _        | j                  j                         | _        | j                  j                         | _        y )	NrU   )rV      r|   rY   r   r}   r   r   r   r   s	            r   rc   z"TestWeightstats2d_nobs.setup_class  r   r   Nr   rQ   r   r   r   r     r   r   r   c                      d} d}d}d}t        | |d      \  }}}t        ||g||gd       d} d	}d
}t        | |d      \  }}}t        ||g||gd       y )N)r   rv   rY   )g?g333333@g@g9(?ger   r      )r   rv   rY   r}   gJ?g*ʿ)r	   r   )abprtrr   r   r&   s          r   test_ttest_ind_with_uneq_varr     sw     	AA	B	BAi0HAq"AR"-A	B	BAi0HAq"AR"-r   c                  2   dd l mc m}  ddg}ddg}| j                  ddd      }t	        ||      }|j                  d      }t        ||dd	
       t	        |t        j                  |      dz  dz        }|j                  d      }t        ||d       |j                  dd      }| j                  dddd      }t        |d   |d   d       ddg}ddg}t	        ||      }t        |j                         |j                               }| j                  t        j                  ddg      t        j                  ddg            }t        |d   |d   d       t!        ||      j#                         }	t        |	d   |d   d       t        |	|d       y )Nr   r   rg   rl   g      4@r[   )valuegQ?g~jth?r-   atolg      5@rV      )decimalg?g333333?rk   r,   )statsmodels.stats.proportionr   
proportionproportions_ztestr   
ztest_meanr   r   arrayr   
ztost_meanproportions_ztostr
   r   proportions_chisquarerE   r   	ztest_ind)
smpropr   r   r   r   r   r   r   r   res1as
             r   test_ztest_ztostr    s{   11
QB
RB##B3#7D	R	B==DD$T6	R"c)",	-B==DdB/==c"D##BS#6DQa"5
QB
bB	R	B0D''

B8(<(*

C9(=?D DGT!W40R **,EE!Hd1gD1tR0r   g}y4S4@gWCf=gOǯ?gfa?@g)A@g@	two.sidedzTwo-sample z-Testzx and yg4?g/In@lessg   @f=g/3	?greatergK͎@gNs?r   gc?g*,g9O*?rv   g[-@g띏F)>gj2@gO+@皙@zOne-sample z-Testxgcg@,j?g q@皙@gF)>g&@gA'@g;,#>gnC?g飉@r   g?gki @g=g=秘?smallerlargerz	two-sided)r  r  r  c                   "    e Zd Zed        Zd Zy)	TestZTestc                 &   t        j                  g d      | _        t        j                  g d      | _        t	        | j                        | _        t	        | j                        | _        t        | j
                  | j                        | _        y )N)g333333@gffffff@g      @r  g333333@g      @r  gffffff@g@gffffff@g333333@)g      @皙@ffffff@r  r  g      @gffffff@g      @)	r   r  r   r   r   r   r   r   r   rb   s    r   rc   zTestZTest.setup_class  s^     . /ABSVV$SVV$cffcff-r   c                    | j                   | j                  }}| j                  }t        t        t
        t        t        t        fD ]  }t        |||j                  t        |j                           \  }}t        ||j                  d       t        ||j                  dd       |j!                  |j                  t        |j                           \  }}t        ||j                  d       t        ||j                  dd       |j"                  j%                         }t'        j(                  |d         rt&        j*                   |d<   t'        j(                  |d         rt&        j*                  |d<   t-        ||dt        |j                           }t        ||d       |j/                  t        |j                           }t        ||d       t-        |||j                  t        |j                           }t        |||j                  z
  d        t0        t2        t4        fD ]a  }t        |||j                  t        |j                     d	
      \  }}t        ||j                  d       t        ||j                  dd       c | j6                  }	t8        t:        t<        fD ]  }t        ||j                  t        |j                           \  }}t        ||j                  d       t        ||j                  dd       |	j?                  |j                  t        |j                           \  }}t        ||j                  d       t        ||j                  dd       |j"                  j%                         }t'        j(                  |d         rt&        j*                   |d<   t'        j(                  |d         rt&        j*                  |d<   t-        |dt        |j                           }t        ||d       |	jA                  t        |j                           }t        ||d        y )N)r   alternativeg|=r,   gؗҜ<r   r   r   )r  r   )r   r  r   )!r   r   r   ztest_ztest_smallerztest_largerztest_muztest_smaller_muztest_larger_mur
   
null_valuealternativesr  r   	statisticp_valuer  conf_intcopyr   isnaninfr   zconfint_diffztest_unequalztest_smaller_unequalztest_larger_unequalr   ztest_mu_1sztest_smaller_mu_1sztest_larger_mu_1sr  zconfint_mean)
r/   r   r   r   tczstatpvaltc_conf_intcir   s
             r   testzTestZTest.test  sl   $''BWW =,-@ 	IB  Bbmm,8,HJKE4E2<<e<D"**5uE,,R]],8,H ' JKE4E2<<e<D"**5uE ++**,KxxA'#%66AxxA'!#A "b&22>>&BDBB%8!!l2>>.J!KBB%8"b&22>>&BDBBbmm ;%H=	IB !"79MN 	FBBbmm,8,H'02KE4 E2<<e<D"**5uE	F WW 35GH 	9B"--,8,HJKE4E2<<e<D"**5uE--bmm-9"..-I ( KKE4E2<<e<D"**5uE ++**,KxxA'#%66AxxA'!#A "A&22>>&BDBB%8!!l2>>.J!KBB%81	9r   N)rM   rN   rO   rP   rc   r:  rQ   r   r   r  r    s     . .G9r   r  c                  t    dg} dg}t        | |      }|j                  g d      dk(  j                         sJ y )Nr   )g        r[         ?r   rH   allr   r   r   s      r   test_weightstats_len_1r@  ,  s<    
B
B	R	BKK(A-22444r   c                      dgdgg} dgdgg}t        | |      }t        t        t        j                  |      j
                               |j                  ddg      dk(  j                         j                         sJ y )Nr   rv   r[   r<  )r   printr    r   r  r#   rH   r>  r?  s      r   test_weightstats_2d_w1rC  3  sp    #sB#sB	R	B	#bhhrl  
!"KKc
#q(--/33555r   c                      dgg} dgg}t        | |      }|j                  g d      dk(  j                         j                         sJ y )Nr   )r   r[   r<  r=  r?  s      r   test_weightstats_2d_w2rE  ;  sI    #B#B	R	BKK&!+00266888r   )=__doc__numpyr   scipyr   pandasr   numpy.testingr   r   r   statsmodels.stats.weightstatsr   r   r	   r
   r   statsmodels.tools.testingr   r   rS   rf   rq   rt   ry   r   r   r   r   r   r   r   r  r  r'  r(  r  r)  estimater%  r  method	data_namer   nanr!  r"  r$  r#  r1  r2  r3  r.  r   r/  r0  r&  r  r@  rC  rE  rQ   r   r   <module>rQ     s6  "    G GG G ,33 33l! &" * "  ,! *f: f:RS< S<lB5 B&4 &(&/ &(&4 &(&4 &(.$ 1R 
# &"((-/@AB"((,f56   #  * ) !266+<"=> !#3V"<=  " * #  x) ,  "3RVV!<=  "2F!;<  $ ) "  8% & BHH/1BCD BHH.78  " % 
 (, . #288%6$?@ #288%5v$>?  ' , % 
 8 /  -  $BHHbff.?%@A  $BHH&6%?@    %  -  &  
 h) + rxx!13C DE '  % (   h  2  1  'rxx1B(CD  /  !$  "(  0   #   X 0  2  &bhh(8"&&'AB  .   #  !*  /  "   * , !#35E"FG !#3V"<=  '   * #   "2   1  !)2663C*D!E  !)+;V*D!E  #$   $*  !(  2  "+   x !1  3   (*:BFF)C D   (*:F)C D  "#  #,   '  1  !*   "#(*
T9 T9n569r   