
    M/Phv                     :   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j$        d#d$g          e!_%         ej$        d%d&g          e!_&        de!_'        d'e!_(        d(e!_)        d)e!_*         e            Z+d!e+_"        d*e+_#         ej$        ej,        d+g          e+_%         ej$        d%d&g          e+_&        de+_'        d,e+_(        d(e+_)        d)e+_*         e            Z-d!e-_"        d-e-_#         ej$        d.ej,        g          e-_%         ej$        d%d&g          e-_&        de-_'        d/e-_(        d(e-_)        d)e-_*         e            Z.d0e._"        d1e._#         ej$        d#d$g          e._%         ej$        d%d&g          e._&        d2e._'        d'e._(        d(e._)        d)e._*         e            Z/d0e/_"        d3e/_#         ej$        d.ej,        g          e/_%         ej$        d%d&g          e/_&        d2e/_'        d/e/_(        d(e/_)        d)e/_*         e            Z0d4e0_"        d5e0_#         ej$        ej,        d+g          e0_%         ej$        d%d&g          e0_&        d6e0_'        d,e0_(        d(e0_)        d)e0_*         e            Z1d7e1_"        d8e1_#         ej$        d9d:g          e1_%        d%e1_&        d;e1_'        d'e1_(        d<e1_)        d=e1_*         e            Z2d>e2_"        d?e2_#         ej$        ej,        d@g          e2_%        d%e2_&        dAe2_'        d,e2_(        d<e2_)        d=e2_*         e            Z3d7e3_"        dBe3_#         ej$        dCej,        g          e3_%        d%e3_&        d;e3_'        d/e3_(        d<e3_)        d=e3_*         e            Z4dDe4_"        dEe4_#         ej$        dFdGg          e4_%         ej$        d%d&g          e4_&        de4_'        d'e4_(        dHe4_5        d(e4_)        d)e4_*         e            Z6dDe6_"        dIe6_#         ej$        ej,        dJg          e6_%         ej$        d%d&g          e6_&        de6_'        d,e6_(        dHe6_5        d(e6_)        d)e6_*         e            Z7dDe7_"        dKe7_#         ej$        dLej,        g          e7_%         ej$        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<dS )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                   b    e Zd Zedd            Zedd            Zd Zd Zd Zd Z	d	 Z
d
 ZdS )CheckExternalMixinr   c                 F    t          | j        | j        |          | _        d S )N)r   dataweightsdescriptive)clsddofs     h/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/statsmodels/stats/tests/test_weightstats.pyget_descriptivesz#CheckExternalMixin.get_descriptives   s    %chTBB    data.csvc                 d   t          j        t          j        t	          | j                                      }| j        |d<   | j        j        dk    r| j        |d<   n<t          | j        j	        d                   D ]}| j        d d |f         |d|dz   z  <   |
                    |           d S )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     \	#ck*:*: ; ;<<<98=A(BwKK38>!,-- 8 8),!!!Q$8q1u%&&
		%r   c                 L    | j         j        }t          || j        d           d S N-C6?rtol)r   meanr   )selfmns     r   	test_meanzCheckExternalMixin.test_mean0   s*    "DID111111r   c                 L    | j         j        }t          || j        d           d S r+   )r   sumr   )r0   sms     r   test_sumzCheckExternalMixin.test_sum4   s*    !DH4000000r   c                 L    | j         j        }t          || j        d           d S r+   )r   varr   )r0   r8   s     r   test_varzCheckExternalMixin.test_var8   *    "TXD111111r   c                 L    | j         j        }t          || j        d           d S r+   )r   stdr   )r0   r<   s     r   test_stdzCheckExternalMixin.test_std=   r:   r   c                 p    t          | d          sd S | j        j        }t          || j        d           d S )Nsemr,   r-   )hasattrr   std_meanr   r?   )r0   r?   s     r   test_semzCheckExternalMixin.test_semB   sC     tU## 	F'TXD111111r   c                     t          j        | j        t           j                  }dD ]U}| j                            | j        |          }t          j        |t           j                  }t          ||d           Vd S )N)dtype)FT)return_pandasr,   r-   )r   asarray	quantilesfloat64r   quantilequantile_probsr   )r0   quantrE   qtls       r   test_quantilesz!CheckExternalMixin.test_quantilesJ   s    
4><<<( 	3 	3M"++D,?:G , I IC*S
333CCT22222		3 	3r   N)r   )r   )__name__
__module____qualname__classmethodr   r)   r2   r6   r9   r=   rB   rM    r   r   r   r      s        C C C [C 	 	 	 [	2 2 21 1 12 2 2
2 2 2
2 2 23 3 3 3 3r   r   c                   N    e Zd ZdZdZdZdZej        d         Z	e
d             ZdS )TestSim1g(?geڣ")@gGĔH?g|~?)g}\*gI2gY?gg~5?g(rwy@c                 2   t           j                            d           t           j                            d          | _        t           j                            ddd          | _        t           j        d         | _        | 	                                 d S )N5    sizer      r   g?      ?g      ?r   
r   randomseednormalr   uniformr   r_rJ   r   r   s    r   setup_classzTestSim1.setup_class]   sv    
	w9###,,i''12'66U#78r   NrN   rO   rP   r/   r4   r8   r<   r   rb   rG   rQ   rd   rR   r   r   rT   rT   S   sP         D
C
C
CCDI  [  r   rT   c                   N    e Zd ZdZdZdZdZej        d         Z	e
d             ZdS )	TestSim1tgOA4@gޭ,Yc@g.B@#@g~C	@)r   r         	   c                    t           j                            d           t           j                            ddd          | _        | j        dd         | j        dd<   | j        dd         | j        d	d<   t           j                            dd
d          | _        t           j        d         | _        | 	                                 d S )NrV   r   
   rW   rX   rh            rZ   r[   )
r   r^   r_   randintr   ra   r   rb   rJ   r   rc   s    r   rd   zTestSim1t.setup_classp   s    
	w9$$Q$44(1Q3-B(2b5/Bi''12'66U#78r   Nre   rR   r   r   rg   rg   f   sO         D
C
C
Cm$I  [  r   rg   c                   R    e Zd ZdZdZdZdZdZej	        d         Z
ed             ZdS )		TestSim1ng	ԿgXhg?g?gpA.?)g&jjg	3mJgN],Ͽgŏ1w?g6v?c                    t           j                            d           t           j                            d          | _        t           j                            ddd          | _        | xj        d| j                                        z  z  c_        t           j        d         | _	        | 
                    d           d S )Ni  rW   rX   r   rZ   r[   r   )r   r^   r_   r`   r   ra   r   r4   rb   rJ   r   rc   s    r   rd   zTestSim1n.setup_class   s    
	t9###,,i''12'66rCKOO----U#78Qr   N)rN   rO   rP   r/   r4   r8   r<   r?   r   rb   rG   rQ   rd   rR   r   r   rr   rr   {   sU        
 D
C
C
C
CDEI    [     r   rr   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dS )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                 2   t           j                            d           t           j                            d          | _        t           j                            ddd          | _        t           j        d         | _        | 	                                 d S )Ni  )rW      rX   r   rZ   rW   r[   r]   rc   s    r   rd   zTestSim2.setup_class   sv    
	t9###11i''12'66U#78r   N)rN   rO   rP   r/   r4   r8   r<   r   column_stackrb   rG   rQ   rd   rR   r   r   ru   ru      s         
#Dz
"Cz
"Cj
!C	=	>	=	>	@A AI   [  r   ru   c                   H    e Zd Zed             Zd Zd Zd Zd Zd Z	d Z
dS )	TestWeightstatsc                 J   t           j                            d           d\  }}d\  }}|t           j                            |          z   }|t           j                            |          z   }|t           j                            |d          z   }|t           j                            |d          z   }t           j                            dd|          }	t           j                            dd|          }
||c| _        | _        |	|
c| _        | _        ||c| _	        | _
        d S )NrV   rW   rW   r   g333333?rZ   r      )r   r^   r_   randnrp   x1x2w1w2x1_2dx2_2d)r   n1n2m1m2r   r   r   r   r   r   s              r   rd   zTestWeightstats.setup_class   s    
	wBB")//"%%%")//"%%%RY__R+++RY__R+++YqB''YqB''RR$e	3999r   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                              d S )Ng       @r   rw   )r   r   r   r   r   onesr!   r   r   r	   r   rb   )r0   r   r   r   r   w1_w2_d1s           r   test_weightstats_1z"TestWeightstats.test_weightstats_1   s    $'B$'B273r77###273r77###__ 	Ib"sCjAAA"1"E!OBE"b&M25R=II	K 	K 	K 	K 	Kr   c                    | j         | j        }}| j        | j        }}t	          |          }t	          ||          }t	          ||          }|                                }|                                }	t          t          ||||f          d d         t          j        ||	          d           t          |		                    d          |j	        d           t          |	
                                |j
        d           t          |	                                |j        d           t          t          j        |	d          |j        d           t          |                    d          d d         t          j        |d          d           t          |                    d          d d         t          j        |d          d           d S )	Nr   rw      r   r   biasrZ      )r   r   r   r   r   	asrepeatsr   r	   r   r/   r8   r<   r   cov
ttest_meanttest_1samp)
r0   r   r   r   r   r   d1wd2wx1rx2rs
             r   test_weightstats_2z"TestWeightstats.test_weightstats_2   s   $'B$'B__"b)))"b)))mmoommoo 	Ib"r2h???C!OC55r	; 	; 	; 	CHHQKK2666CGGIIsw333CGGIIsw333BF3Q///"=== 	BMM!,,RaR0%2CB2J2JBOOOCNN1--bqb1!-c155r	; 	; 	; 	; 	;r   c                    | j         | j        }}| j        | j        }}t	          ||          }t	          ||          }|                                }|                                }t          |                    d          |j        d           t          |                    d          |j        d           t          |	                    d          |j	        d           t          t          j        |j        d          |j        d           t          t          j        |j                  |j        d           |                    d          \  }	}
}t          |	|
gt          j        |d          d           t#          ||          }|                                }t          j        ||          }t          |d d         |d           d S )	Nr   r   r   r   r   rZ   r   rw   )r   r   r   r   r   r   r   r/   r8   r<   r   r   Tcorrcoefr   r   r   r   r	   )r0   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   s   z4:u$'BUB///UB///!!##!!##FKKNNFK<<<FJJqMM6:r:::FJJqMM6:r:::BF68!444fj"EEEBK116?BGGG
 ##A&&1aQFE$5fa$@$@"EEE&&))//E"1"Iub11111r   c                    | j         }| j        }t          ||d          }t          ||d          }t          ||d          }|                                }|                                }|                                }t	          t
          j        |         t
          j        |         d           t	          t
          j        |         t
          j        |         d           |                    d          }|                    d          }|                    d          }t	          t
          j        |         t
          j        |         d           t	          t
          j        |         t
          j        |         d           |                                }|                                }|                                }t	          ||d           t	          ||d           d S )Nr   r   r   r   rw   r   r\   )r   r   r   r   r   r   rb   tconfint_mean)	r0   r   r   d1w_d0d1w_d1d1w_d2res0res1res2s	            r   test_weightstats_ddof_testsz+TestWeightstats.test_weightstats_ddof_tests  s    
WUBQ777UBQ777UBQ777   ""  ""  ""BE$Ktb999BE$Ktb999  %%  %%  %%BE$Ktb999BE$Ktb999 ##%%##%%##%%D$+++D$+++++r   c                    | j         | j        }}t          |          }t          |          }t          ||          }ddlm} dD ];}dD ]6}|                    ||          }	t          t          |	|                     7<t          j	        ||          }
t          t          |                                          t          |
                                          k               d S Nr   )SimpleTable)TF)pooledunequal)use_tusevar)r   r   r   r   statsmodels.iolib.tabler   summaryr   
isinstance	from_datastrr0   r   r   r   d2cm1r   r   r   smrycm2s              r   &test_comparemeans_convenient_interfacez6TestWeightstats.test_comparemeans_convenient_interface+  s    z4:u2r"" 	877777" 	7 	7E/ 7 7{{v{>>
45566667
 $UE22CKKMM""c#++--&8&8899999r   c                    | j         | j        }}t          |          }t          |          }t          ||          }ddlm} dD ];}dD ]6}|                    ||          }	t          t          |	|                     7<t          j	        ||          }
t          t          |                                          t          |
                                          k               d S 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    wu2r"" 	877777" 	7 	7E/ 7 7{{v{>>
45566667
 $UE22CKKMM""c#++--&8&8899999r   N)rN   rO   rP   rQ   rd   r   r   r   r   r   r   rR   r   r   rz   rz      s        , , [,K K K$!; !; !;F2 2 2@, , ,>: : :": : : : :r   rz   c                   &    e Zd Zd Zd Zd Zd ZdS )CheckWeightstats1dMixinc                    | j         }| j        }t          |                    d          |j        d           t          |                    d|j                  |j        d           t          |                    d|j                  |j        d           |                    d          }t          |                    dd          |d           |                    d          }t          |                    dd          |d           t          t          j
        |j        d|j        z
            |j
        d           d S )Nr   r   )r   r   r   )r   r   r   r/   r8   r   r<   var_ddofstd_ddofr   r   r   )r0   r   r   var1std1s        r   
test_basicz"CheckWeightstats1dMixin.test_basicQ  s   hhCHHQKK2666CGGACHG55swCCCCGGACHG55swCCC|||##CGGAAG..b999|||##CGGAAG..b999BF35qz:::CGRHHHHHr   c                     | j         }| j        }t          |                    d          d d         t	          j        |d          d           d S )NrZ   rw   r   )r   r   r   r   r   r   r0   r   r   s      r   
test_ttestz"CheckWeightstats1dMixin.test_ttesta  sU    hhCNN1--bqb1!-c155r	; 	; 	; 	; 	;r   c                    | j         | j        }}| j        | j        }}| j        | j        }}t          j        ||          }t          t          ||||f          d d         |d           t          t          ||d          t          ||d                    }t          |                                d d         |d           t          t          ||d          t          ||d                    }t          |                                d d         |d           t          t          ||d          t          ||d                    }	t          t          ||d          t          ||d                    }
t          t          ||d          t          ||d                    }|	                    d          }|
                    d          }|                    d          }t          ||d           t          ||d           |	                    d	          }|
                    d	          }|                    d	          }t          ||d           t          ||d           |	                    d          }|
                    d          }|                    d          }t          ||d           t          ||d           d S )
Nr   rw   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r	   r   r   r   tconfint_diff)r0   r   r   r   r   r   r   res_spr   cm0r   r   r   r   r   s                  r   test_ttest_2samplez*CheckWeightstats1dMixin.test_ttest_2samplek  s   $'B8TXS$'B c**Ib"r2h???C"B	( 	( 	( +b"1===%b"1===? ?BLLNN2A2.;;;+b"1===%b"1===? ?BLLNN2A2.;;;;r2A>>>&r2A>>>@ @;r2A>>>&r2A>>>@ @;r2A>>>&r2A>>>@ @ }}I}..}}I}..}}I}..D$+++D$+++    11   11   11D$+++D$+++  	 22  	 22  	 22D$+++D$+++++r   c                    | j         }d}|                                \  }}|                    |          \  }}}t          ||t	          j        |j                  z  d           |                    |          \  }}}t          ||t	          j        |j                  z  d           |                    t	          j        ||f                    \  }}}t          ||t	          j        |j                  z  d           d S )Ng?ri   )r   r   r   r   r   r   r$   vstack)r0   r   alphalowuppr   r   r   s           r   test_confint_meanz)CheckWeightstats1dMixin.test_confint_mean  s    h$$&&S..%%1aAurwqw'7'77;;;..%%1aAurwqw'7'77;;;..C:!6!6771aAurwqw'7'77;;;;;r   N)rN   rO   rP   r   r   r   r   rR   r   r   r   r   O  sT        I I I ; ; ;+, +, +,Z
< 
< 
< 
< 
<r   r   c                       e Zd Zd ZdS )CheckWeightstats2dMixinc                 |    | j         }| j        }t          t          j        |j                  |j        d           d S )Nr   )r   r   r   r   r   r   r   s      r   	test_corrz!CheckWeightstats2dMixin.test_corr  s6    hhBK..bAAAAAr   N)rN   rO   rP   r   rR   r   r   r   r     s(        B B B B Br   r   c                   $    e Zd Zed             ZdS )TestWeightstats1d_ddofc                 x   t           j                            d           d\  }}d\  }}|t           j                            |d          z   }|t           j                            |d          z   }t           j                            dd|          }t           j                            dd|          }||c| _        | _        ||c| _        | _        t          ||d          | _
        t          ||d          | _        | j
                                        | _        | j                                        | _        d S )NrV   r|   r}   r   r~   r   r   r^   r_   r   rp   r   r   r   r   r   r   r   r   r   r   	r   r   r   r   r   r   r   r   r   s	            r   rd   z"TestWeightstats1d_ddof.setup_class     
	wBB")//"a(((")//"a(((Yq!R((Yq!R((RRb"1555b"1555'##%%'##%%r   NrN   rO   rP   rQ   rd   rR   r   r   r   r     -        & & [& & &r   r   c                   $    e Zd Zed             ZdS )TestWeightstats2dc                 t   t           j                            d           d\  }}d\  }}|t           j                            |d          z   }|t           j                            |d          z   }t           j                            dd|          }t           j                            dd|          }||c| _        | _        ||c| _        | _        t          ||          | _
        t          ||          | _        | j
                                        | _        | j                                        | _        d S )NrV   r|   r}   rZ   r   r~   r   r   r   s	            r   rd   zTestWeightstats2d.setup_class  s   
	wBB")//"a(((")//"a(((Yq!R((Yq!R((RRb"---b"---'##%%'##%%r   Nr   rR   r   r   r   r     r   r   r   c                   $    e Zd Zed             ZdS )TestWeightstats2d_ddofc                 x   t           j                            d           d\  }}d\  }}|t           j                            |d          z   }|t           j                            |d          z   }t           j                            dd|          }t           j                            dd|          }||c| _        | _        ||c| _        | _        t          ||d          | _
        t          ||d          | _        | j
                                        | _        | j                                        | _        d S )NrV   r|   r}   rZ   r   r~   r   r   r   s	            r   rd   z"TestWeightstats2d_ddof.setup_class  r   r   Nr   rR   r   r   r   r     r   r   r   c                   $    e Zd Zed             ZdS )TestWeightstats2d_nobsc                 x   t           j                            d           d\  }}d\  }}|t           j                            |d          z   }|t           j                            |d          z   }t           j                            dd|          }t           j                            dd|          }||c| _        | _        ||c| _        | _        t          ||d          | _
        t          ||d          | _        | j
                                        | _        | j                                        | _        d S )	NrV   )rW      r}   rZ   r   r~   r   r   r   r   s	            r   rd   z"TestWeightstats2d_nobs.setup_class  r   r   Nr   rR   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           d S )N)r   rw   rZ   )g?g333333@g@g9(?ger   r      )r   rw   rZ   r~   gJ?g*ʿ)r	   r   )abprtrr   r   r'   s          r   test_ttest_ind_with_uneq_varr     s     	AA	B	BAi000HAq"AR"---A	B	BAi000HAq"AR"-----r   c                     dd l mc m}  ddg}ddg}|                     ddd          }t	          ||          }|                    d          }t          ||dd	
           t	          |t          j        |          dz  dz            }|                    d          }t          ||d           |
                    dd          }|                     dddd          }t          |d         |d         d           ddg}ddg}t	          ||          }t          |                                |                                          }|                     t          j        ddg          t          j        ddg                    }t          |d         |d         d           t!          ||                                          }	t          |	d         |d         d           t          |	|d           d S )Nr   r   rh   rm   g      4@r\   )valuegQ?g~jth?r.   atolg      5@rW      )decimalg?g333333?rl   r-   )statsmodels.stats.proportionr   
proportionproportions_ztestr   
ztest_meanr   r   arrayr   
ztost_meanproportions_ztostr
   r   proportions_chisquarerF   r   	ztest_ind)
smpropr   r   r   r   r   r   r   r   res1as
             r   test_ztest_ztostr    s   111111111
QB
RB##B3#77D	R		B==DD$T6666	R"c)",	-	-B==DdB////==c""D##BS#66DQa"5555
QB
bB	R		B00D''
B8(<(<(*
C9(=(=? ?D DGT!W40000R  **,,EE!Hd1gD1111tR00000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*?rw   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dS )	TestZTestc                    t          j        g d          | _        t          j        g d          | _        t	          | j                  | _        t	          | j                  | _        t          | j        | j                  | _        d S )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   rc   s    r   rd   zTestZTest.setup_class  sw     . . . / /AAABBSV$$SV$$cfcf--r   c                 n   | j         | j        }}| j        }t          t          t
          t          t          t          fD ]}t          |||j
        t          |j                           \  }}t          ||j        d           t          ||j        dd           |                    |j
        t          |j                           \  }}t          ||j        d           t          ||j        dd           |j                                        }t'          j        |d                   rt&          j         |d<   t'          j        |d                   rt&          j        |d<   t-          ||dt          |j                           }t          ||d           |                    t          |j                           }t          ||d           t-          |||j
        t          |j                           }t          |||j
        z
  d           t0          t2          t4          fD ]]}t          |||j
        t          |j                 d	
          \  }}t          ||j        d           t          ||j        dd           ^| j        }	t8          t:          t<          fD ]}t          ||j
        t          |j                           \  }}t          ||j        d           t          ||j        dd           |	                    |j
        t          |j                           \  }}t          ||j        d           t          ||j        dd           |j                                        }t'          j        |d                   rt&          j         |d<   t'          j        |d                   rt&          j        |d<   t-          |dt          |j                           }t          ||d           |	                     t          |j                           }t          ||d           d S )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)
r0   r   r   r   tczstatpvaltc_conf_intcir   s
             r   testzTestZTest.test  s1   $'BW =,-@ 	I 	IB  Bbm,8,HJ J JKE4E2<e<<<<D"*5uEEEE,,R],8,H ' J JKE4E2<e<<<<D"*5uEEEE +**,,KxA'' *#%6AxA'' (!#A "b&22>&BD D DBB%8888!!l2>.J!KKBB%8888"b&22>&BD D DBBbm ;%HHHHH !"79MN 	F 	FBBbm,8,H'02 2 2KE4 E2<e<<<<D"*5uEEEEE W 35GH 	9 	9B"-,8,HJ J JKE4E2<e<<<<D"*5uEEEE--bm-9".-I ( K KKE4E2<e<<<<D"*5uEEEE +**,,KxA'' *#%6AxA'' (!#A "A&22>&BD D DBB%8888!!l2>.J!KKBB%888881	9 	9r   N)rN   rO   rP   rQ   rd   r;  rR   r   r   r  r    sC         . . [.G9 G9 G9 G9 G9r   r  c                      dg} dg}t          | |          }|                    g d          dk                                    sJ d S )Nr   )g        r\         ?r   rI   allr   r   r   s      r   test_weightstats_len_1rA  ,  sR    
B
B	R		BKK((A-224444444r   c                  &   dgdgg} dgdgg}t          | |          }t          t          t          j        |          j                             |                    ddg          dk                                                                    sJ d S )Nr   rw   r\   r=  )r   printr!   r   r	  r$   rI   r?  r@  s      r   test_weightstats_2d_w1rD  3  s    #sB#sB	R		B	#bhrll 
!
!"""KKc
##q(--//335555555r   c                      dgg} dgg}t          | |          }|                    g d          dk                                                                    sJ d S )Nr   )r   r\   r=  r>  r@  s      r   test_weightstats_2d_w2rF  ;  sb    #B#B	R		BKK&&!+0022668888888r   )=__doc__numpyr   scipyr   pandasr   numpy.testingr   r   r   statsmodels.stats.weightstatsr   r   r	   r
   r   statsmodels.tools.testingr   r   rT   rg   rr   ru   rz   r   r   r   r   r   r   r   r  r   r(  r)  r	  r*  estimater&  r  method	data_namer!  nanr"  r#  r%  r$  r2  r3  r4  r/  r   r0  r1  r'  r  rA  rD  rF  rR   r   r   <module>rR     s   "               G G G G G G G G G GG G G G G G G G G G G G G G , , , , , ,33 33 33 33 33 33 33 33l    !   &    "   *         "      ,    !   *f: f: f: f: f: f: f: f:RS< S< S< S< S< S< S< S<lB B B B B5 B B B& & & & &4 & & &(& & & & &/ & & &(& & & & &4 & & &(& & & & &4 & & &(. . .$ 1  1  1R 
# &"(-/@ABB"(,f566   #  * ) !26+<"=>> !#3V"<==  " * #  vxx) ,  "3RV!<==  "2F!;<<  $ ) "  688% & BH/1BCDD BH.788  " % 
 &((, . #28%6$?@@ #28%5v$>??  ' , % 
 688 /  -  $BHbf.?%@AA  $BH&6%?@@    %  -  &  
 fhh) + rx!13C DEE '  % (   fhh  2  1  'rx1B(CDD  /  !$  "(  0   #   VXX 0  2  &bh(8"&'ABB  .   #  !*  /  "   * , !#35E"FGG !#3V"<==  '   * #   "2   1  !)263C*D!E!E  !)+;V*D!E!E  #$   $*  !(  2  "+   vxx !1  3   (*:BF)C D D   (*:F)C D D  "#  #,   '  1  !*   "#(* *
T9 T9 T9 T9 T9 T9 T9 T9n5 5 56 6 69 9 9 9 9r   