
    !g                     <    d dl Zd dlmZ d Zd Zd Zd Zd Zd Z	y)	    N)normc                  v   d} t        j                  g dt         j                        }d}d}d}t        |      }t	        ddd	
      }t        |       D ]  }t         j                  j                  dd      }t         j                  j                  ||f      }	|t         j                  j                         z  t        j                  d|dz  z
        |	z  z   }	||	d d df   z  t        j                  d|dz  z
        |	d d df   z  z   |	d d df<   ddt        j                  t        j                  |	|             z   z  }
|t         j                  j                         z  t        j                  d|dz  z
        t         j                  j                  |      z  z   }t        j                  |      }d||
k  z  }t        |      D ]V  }|j                  d|||   fz         |j                  dj                  |	|d d f   D cg c]  }d|z  	 c}      dz          X  |j!                          y c c}w )Nd      r   dtype皙?      ?g333333?zgee_logistic_1.csvwutf-8encoding      sizer      %d, %d,,%.3f
)nparrayfloat64lenopenrangerandomrandintnormalsqrtexpdotr   cdfwritejoinclose)nclustbetarrxrepOUTinxprzuyjbs                   p/var/www/dash_apps/app1/venv/lib/python3.12/site-packages/statsmodels/genmod/tests/results/gee_generate_tests.pygenerate_logisticr;      s    F 88Jbjj1D 	A 
B 
BD	A
#S7
;C6] FIIa#II1a&)ryy!!BGGAb!eG$4Q$66AadG)bgga1foa1g55!Q$"&&"&&D/)**+ryy!!GGAb!eGRYY--1-556HHQKq2vJq 	FAIIi1ad)+,IIchhAadG<q
<=DE	FF" IIK  =s   H6c                     d} t        j                  g dt         j                        }d}d}t        |      }t	        ddd	      }t        |       D ]Y  }t         j                  j                  d
d      }t         j                  j                  ||f      }|t         j                  j                         z  t        j                  d|dz  z
        |z  z   }||d d df   z  t        j                  d|dz  z
        |d d df   z  z   |d d df<   t        j                  ||      t         j                  j                  |      z   }	t        |      D ]V  }
|j                  d||	|
   fz         |j                  dj                  ||
d d f   D cg c]  }d|z  	 c}      dz          X \ |j                          y c c}w )Nr   r   r	   r   r   zgee_linear_1.csvr   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r    r!   r"   r#   r%   r'   r(   r)   )r*   r+   r,   r-   r/   r0   r1   r2   r3   r7   r8   r9   s               r:   generate_linearr=   .   s    F 88Jbjj1D 	A 
B
 	D	A
!3
9C6] FIIa#II1a&)ryy!!BGGAb!eG$4Q$66AadG)bgga1foa1g55!Q$ FF1dObii..A.66q 	FAIIi1ad)+,IIchhAadG<q
<=DE	FF IIK  =s   G c                     d} t        j                  g dt         j                        }d}d}d}t        |      }t	        ddd	
      }t        |       D ]  }t         j                  j                  d|f      }t        j                  ||      }	|	t        j                  |      t         j                  j                         z  z  }	|	ddxxx t        j                  |      t         j                  j                         z  z  ccc |	ddxxx t        j                  |      t         j                  j                         z  z  ccc |	t        j                  |      t         j                  j                  d      z  z  }	t        d      D ]V  }
|j                  d||	|
   fz         |j                  dj                  ||
d d f   D cg c]  }d|z  	 c}      dz          X  |j                          y c c}w )N   r   r	   r   r   g      ?zgee_nested_linear_1.csvr   r   r   
   r   r      z	%d, %.3f,r   r   r   )r   r   r   r   r   r   r    r"   r%   r#   r'   r(   r)   )r*   r+   v1v2v3r/   r0   r1   r3   r7   r8   r9   s               r:   generate_nested_linearrE   U   s    F 88Jbjj1D 
B 
B 
BD	A
(#
@C6] FII2q'*FF1dO	RWWR[))+++	!A"''"+bii..000	!B2772;ryy//111	RWWR[))r)222r 	FAIIkQ!I-.IIchhAadG<q
<=DE	FF IIK  =s   G8c                  X   t        j                  dt         j                        } d| d<   d| d<   d}t        dd	d
      }t	        d      D ]  }t         j
                  j                  dd      }t         j
                  j                  |df      }t	        d      D ]/  }|d d |fxx   t         j
                  j                         z  cc<   1 t        j                  ||       }t        j                  g d      |d d d f   z   }ddt        j                  |       z   z  }|t         j
                  j                         z  t        j                  d|dz  z
        t         j
                  j                  |      z  z   }t        j                  |      }	|	d d d f   |kD  j                  d      }
t	        |      D ]V  }|j                  d||
|   fz         |j                  dj!                  ||d d f   D cg c]  }d|z  	 c}      dz          X  |j#                          y c c}w )NrA   r	   r   r      r   zgee_ordinal_1.csvr   r   r   r?   r   r   r   )r   r         r   r   r   r   )r   zerosr   r   r   r    r!   r"   r%   r   r$   r#   r   r&   sumr'   r(   r)   )r+   rzr0   r1   r2   r3   r8   r4   r5   r6   r7   r9   s               r:   generate_ordinalrM   |   s    88ARZZ(DDGDG	B
"C'
:C3Z FIIa#II1a&)q 	*AadGryy''))G	*VVAt_XXl#bDk1!bffbSk/"ryy!!GGAb!eGRYY--1-556HHQKq$wZ"_!!!$q 	FAIIi1ad)+,IIchhAadG<q
<=DE	F#F* IIK  =s   7H'c                  "   t         j                  d   } t         j                  d   }t        |       }d}t        ddd      }t	        d      D ]*  }t         j
                  j                  d	d
      }t         j
                  j                  ||f      }d|d d df<   t	        d|j                  d         D ]/  }|d d |fxx   t         j
                  j                         z  cc<   1 t        j                  t        j                  ||             d d d f   }	t        j                  t        j                  ||            d d d f   }
d|	z   |
z   }t        j                  |	|z  |
|z  d|z  f      }t        j                  |d      }|t         j
                  j                         z  t        j                  d|dz  z
        t         j
                  j                  |      z  z   }t        j                  |      }|d d d f   |kD  j!                  d      }t	        |      D ]V  }|j#                  d|||   fz         |j#                  dj%                  ||d d f   D cg c]  }d|z  	 c}      dz          X - |j'                          y c c}w )N)r   r   )rG   rI   r   zgee_nominal_1.csvr   r   r   r?   r   r   r   r   r   r   r   r   r   r   )r   r_r   r   r   r    r!   r"   shaper$   r%   hstackcumsumr#   r   r&   rK   r'   r(   r)   )beta1beta2r/   rL   r0   r1   r2   r3   r8   pr1pr2denr4   cprr5   r6   r7   r9   s                     r:   generate_nominalrY      s-    EE(OEEE(OEE
A	B
"C'
:C3Z FIIa#II1a&)!Q$q!''!*% 	*AadGryy''))G	*ffRVVAu%&q$w/ffRVVAu%&q$w/#gmYYCS!C%01iiAryy!!GGAb!eGRYY--1-556HHQKq$wZ#""1%q 	FAIIi1ad)+,IIchhAadG<q
<=DE	F)F0 IIK  =s   Jc                  x   t        j                  dt         j                        } d| d<   d| d<   d}t        dd	d
      }t	        |      D ]R  }t         j
                  j                  dd      }t         j
                  j                  |df      }t	        d      D ]/  }|d d |fxx   t         j
                  j                         z  cc<   1 t        j                  ||       }t        j                  |      }|D 	cg c]!  }	t         j
                  j                  |	      # }
}	t        j                  |
      }
t	        |      D ]V  }|j                  d||
|   fz         |j                  dj                  ||d d f   D cg c]  }d|z  	 c}      dz          X U |j                          y c c}	w c c}w )NrA   r	   r   r   rI   rH   r   zgee_poisson_1.csvr   r   r   r   r   r   r   r   r   r   )r   rJ   r   r   r   r    r!   r"   r%   r$   poissonr   r'   r(   r)   )r+   r*   r0   r1   r2   r3   r8   lpEer7   r9   s               r:   generate_poissonr_      su    88ARZZ(DDGDGF
"C'
:C6] FIIa#II1a&)q 	*AadGryy''))G	*VVAt_FF2J+,-aRYYq!--HHQKq 	FAIIi1ad)+,IIchhAadG<q
<=DE	FF  IIK .
  =s   =&F2F7)
numpyr   scipy.stats.distributionsr   r;   r=   rE   rM   rY   r_        r:   <module>rd      s.     *&R$N$N F#Lrc   