§
    fŠtj�I  ã                   ót   — d dl Zd dlmZ d dlZd dlmZ d dlmZm	Z	m
Z
 d dlmZ ddlmZ  G d„ d	¦  «        ZdS )
é    N)Úassert_allclose)Úraises)Úbinned_statisticÚbinned_statistic_2dÚbinned_statistic_dd)Úcheck_random_stateé   )Úcheck_named_resultsc                   ó  — e Zd Zed„ ¦   «         Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d „ Z#d!„ Z$d"„ Z%d#„ Z&d$„ Z'd%„ Z(d&„ Z)d'„ Z*d(„ Z+d)„ Z,d*„ Z-d+„ Z.d,„ Z/e0j1         2                    d-e3j4        e3j5        g¦  «        e0j1         2                    d.e3j6        e3j7        e3j8        e3j9        e3j:        e3j;        d/d0„ d1„ g	¦  «        d2„ ¦   «         ¦   «         Z<d3S )4ÚTestBinnedStatisticc                 ón  — t          d¦  «        }|                     d¬¦  «        | _        |                     d¬¦  «        | _        |                     d¬¦  «        | _        |                     d¬¦  «        | _        |                     d¬¦  «        | _        |                     d¬¦  «        dz   | _        d S )Ni‰&  éd   ©Úsize)r   é   g    €„.A)r   ÚuniformÚxÚyÚvÚXÚwÚu)ÚclsÚrngs     úe/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/stats/tests/test_binned_statistic.pyÚsetup_classzTestBinnedStatistic.setup_class   s–   € å  Ñ&Ô&ˆØ—’ �Ñ%Ô%ˆŒØ—’ �Ñ%Ô%ˆŒØ—’ �Ñ%Ô%ˆŒØ—’ �Ñ*Ô*ˆŒØ—’ �Ñ%Ô%ˆŒØ—’ �Ñ%Ô%¨Ñ+ˆŒˆˆó    c                 óÂ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          j        |d¬¦  «        \  }}t          ||¦  «         t          ||¦  «         d S )NÚcounté
   ©Úbins©r   r   r   ÚnpÚ	histogramr   )Úselfr   r   Úcount1Úedges1ÚbcÚcount2Úedges2s           r   Útest_1d_countz!TestBinnedStatistic.test_1d_count   sk   € ØŒFˆØŒFˆå-¨a°°GÀ"ÐEÑEÔEÑˆ�˜Ýœ a¨bÐ1Ñ1Ô1‰ˆ�å˜ Ñ'Ô'Ð'Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 óZ   — | j         }| j        }g d¢}|D ]}t          |||d¬¦  «         Œd S )N)ÚmeanÚmedianr   Úsumr    r!   )r   r   r   )r&   r   r   Ú
statisticsÚ	statistics        r   Útest_gh5927zTestBinnedStatistic.test_gh5927"   sP   € ð ŒFˆØŒFˆØ7Ð7Ð7ˆ
Ø#ð 	7ð 	7ˆIÝ˜Q  9°2Ð6Ñ6Ô6Ð6Ð6ð	7ð 	7r   c                 ó²   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         d S ©NÚstdr    r!   )r   r   r   r$   r6   r   ©r&   r   r   Ústat1r(   r)   Ústat2r+   s           r   Útest_big_number_stdz'TestBinnedStatistic.test_big_number_std+   sd   € ð ŒFˆØŒFˆÝ,¨Q°°5¸rÐBÑBÔBÑˆˆv�rÝ,¨Q°µ2´6ÀÐCÑCÔCÑˆˆv�rå˜˜uÑ%Ô%Ð%Ð%Ð%r   c                 óò   — | j         }| j        }t          t          ||dd¬¦  «        ¦  «         t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         d S )Nr   iè  r!   r6   )r   r   Úprintr   r$   r6   r   r7   s           r   Útest_empty_bins_stdz'TestBinnedStatistic.test_empty_bins_std5   s‚   € àŒFˆØŒFˆÝÕ˜q ! W°4Ð8Ñ8Ô8Ñ9Ô9Ð9Ý,¨Q°°5¸tÐDÑDÔDÑˆˆv�rÝ,¨Q°µ2´6ÀÐEÑEÔEÑˆˆv�rå˜˜uÑ%Ô%Ð%Ð%Ð%r   c           
      ó`  — | j         }| j                             ¦   «         }t          j        |d<   t          t          t          ||dd¬¦  «         t          t          t          ||dt          j        d¦  «        ¬¦  «         t          j	        |d<   t          t          t          ||dd¬¦  «         d S )Nr   r6   r    r!   r   )
r   r   Úcopyr$   ÚinfÚassert_raisesÚ
ValueErrorr   Úint64Únan)r&   r   r   s      r   Ú#test_non_finite_inputs_and_int_binsz7TestBinnedStatistic.test_non_finite_inputs_and_int_bins?   s›   € ð ŒFˆØŒF�KŠK‰MŒMˆÝŒvˆˆ!‰Ý•jÕ"2°A°q¸%ÀbÐIÑIÔIÐIå•jÕ"2°A°q¸%Ýœ8 B™<œ<ð	)ñ 	)ô 	)ð 	)åŒvˆˆ!‰Ý•jÕ"2°A°q¸'ÈÐKÑKÔKÐKÐKÐKr   c                 ól   — | j         }| j        }t          ||dd¬¦  «        }d}t          ||¦  «         d S )Nr   r    r!   ©r2   Ú	bin_edgesÚ	binnumber)r   r   r   r
   )r&   r   r   ÚresÚ
attributess        r   Útest_1d_result_attributesz-TestBinnedStatistic.test_1d_result_attributesL   sA   € ØŒFˆØŒFˆå˜q ! W°2Ð6Ñ6Ô6ˆØ<ˆ
Ý˜C Ñ,Ô,Ð,Ð,Ð,r   c                 óÄ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          j        |d|¬¦  «        \  }}t          ||¦  «         t          ||¦  «         d S )Nr0   r    r!   ©r"   Úweightsr#   )r&   r   r   Úsum1r(   r)   Úsum2r+   s           r   Útest_1d_sumzTestBinnedStatistic.test_1d_sumT   sm   € ØŒFˆØŒFˆå+¨A¨q°%¸bÐAÑAÔAÑˆˆf�bÝ”| A¨B¸Ð:Ñ:Ô:‰ˆˆfå˜˜dÑ#Ô#Ð#Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S )Nr.   r    r!   )r   r   r   r$   r.   r   ©r&   r   r   r8   r(   r)   r9   r+   s           r   Útest_1d_meanz TestBinnedStatistic.test_1d_mean^   sr   € ØŒFˆØŒFˆå,¨Q°°6ÀÐCÑCÔCÑˆˆv�rÝ,¨Q°µ2´7ÀÐDÑDÔDÑˆˆv�rå˜˜uÑ%Ô%Ð%Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S r5   )r   r   r   r$   r6   r   rT   s           r   Útest_1d_stdzTestBinnedStatistic.test_1d_stdh   ór   € ØŒFˆØŒFˆå,¨Q°°5¸rÐBÑBÔBÑˆˆv�rÝ,¨Q°µ2´6ÀÐCÑCÔCÑˆˆv�rå˜˜uÑ%Ô%Ð%Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S )NÚminr    r!   )r   r   r   r$   rZ   r   rT   s           r   Útest_1d_minzTestBinnedStatistic.test_1d_minr   rX   r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S )NÚmaxr    r!   )r   r   r   r$   r]   r   rT   s           r   Útest_1d_maxzTestBinnedStatistic.test_1d_max|   rX   r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S )Nr/   r    r!   )r   r   r   r$   r/   r   rT   s           r   Útest_1d_medianz"TestBinnedStatistic.test_1d_median†   sr   € ØŒFˆØŒFˆå,¨Q°°8À"ÐEÑEÔEÑˆˆv�rÝ,¨Q°µ2´9À2ÐFÑFÔFÑˆˆv�rå˜˜uÑ%Ô%Ð%Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 ó  ‡— | j         d d…         }| j        d d…         }t          ||dd¬¦  «        \  }}Št          j        g d¢¦  «        }ˆfd„t          j        ‰¦  «        D ¦   «         }t          ‰|¦  «         t          ||¦  «         d S )Né   r   r   r!   )r   é   r	   r   rc   r   r   r   r   r	   r	   r   r   r	   rc   r   r	   r	   rc   r	   c                 ó@   •— g | ]}‰|k                          ¦   «         ‘ŒS © ©r0   ©Ú.0Úir)   s     €r   ú
<listcomp>z7TestBinnedStatistic.test_1d_bincode.<locals>.<listcomp>˜   ó%   ø€ Ð9Ð9Ð9 a�2˜’7—-’-‘/”/Ð9Ð9Ð9r   )r   r   r   r$   ÚarrayÚuniquer   )r&   r   r   r'   r(   Úbc2Úbcountr)   s          @r   Útest_1d_bincodez#TestBinnedStatistic.test_1d_bincode�   s§   ø€ ØŒF�3�B�3ŒKˆØŒF�3�B�3ŒKˆå-¨a°°GÀ!ÐDÑDÔDÑˆ�˜ÝŒhð !ð !ð !ñ "ô "ˆð :Ð9Ð9Ð9­2¬9°R©=¬=Ð9Ñ9Ô9ˆå˜˜CÑ Ô Ð Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 ó¸  — t           j                             d¦  «        }t          j        d¦  «        }|                     d¦  «        }t	          |d d…         |d d…         ¦  «        \  }}}t	          ||dg¬¦  «        \  }}}t	          ||d¬¦  «        \  }	}
}t          ||¦  «         t          ||¦  «         t          ||	¦  «         t          ||
¦  «         d S )Nl   Ù p- é   é   )r   é   ©Úrange)r$   ÚrandomÚdefault_rngÚaranger   r   )r&   r   r   Údatar.   r"   Ú_Ú
mean_rangeÚ
bins_rangeÚmean_range2Úbins_range2s              r   Útest_1d_range_keywordz)TestBinnedStatistic.test_1d_range_keyword�   sÖ   € åŒi×#Ò# JÑ/Ô/ˆÝŒI�b‰MŒMˆØ�zŠz˜"‰~Œ~ˆå(¨¨3¨B¨3¬°°c°r°c´Ñ;Ô;‰ˆˆd�AÝ$4°Q¸ÀWÀIÐ$NÑ$NÔ$NÑ!ˆ
�J Ý&6°q¸$ÀgÐ&NÑ&NÔ&NÑ#ˆ�[ !å˜˜jÑ)Ô)Ð)Ý˜˜jÑ)Ô)Ð)Ý˜˜kÑ*Ô*Ð*Ý˜˜kÑ*Ô*Ð*Ð*Ð*r   c                 óV  — | j         }| j        }| j        }t          ||dd¬¦  «        \  }}}t          ||dd¬¦  «        \  }}}	t          |||gdd¬¦  «        \  }
}}t	          |
d         |¦  «         t	          |
d         |¦  «         t	          ||¦  «         t	          ||¦  «         d S )Nr.   r    r!   r   r	   )r   r   r   r   r   )r&   r   r   r   Ústat1vÚedges1vÚbc1vÚstat1wÚedges1wÚbc1wr9   r+   rn   s                r   Útest_1d_multi_valuesz(TestBinnedStatistic.test_1d_multi_values¬   sÀ   € ØŒFˆØŒFˆØŒFˆå 0°°A°vÀBÐ GÑ GÔ GÑˆ�˜Ý 0°°A°vÀBÐ GÑ GÔ GÑˆ�˜Ý-¨a°!°Q°¸ÀbÐIÑIÔIÑˆˆv�så˜˜aœ &Ñ)Ô)Ð)Ý˜˜aœ &Ñ)Ô)Ð)Ý˜ Ñ(Ô(Ð(Ý˜˜cÑ"Ô"Ð"Ð"Ð"r   c                 óø   — | j         }| j        }| j        }t          |||dd¬¦  «        \  }}}}t	          j        ||d¬¦  «        \  }}	}
t          ||¦  «         t          ||	¦  «         t          ||
¦  «         d S )Nr   é   r!   ©r   r   r   r   r$   Úhistogram2dr   )r&   r   r   r   r'   Úbinx1Úbiny1r)   r*   Úbinx2Úbiny2s              r   Útest_2d_countz!TestBinnedStatistic.test_2d_countº   s’   € ØŒFˆØŒFˆØŒFˆå#6Øˆq�!�W 1ð$&ñ $&ô $&Ñ ˆ��u˜bå!œ~¨a°¸Ð;Ñ;Ô;Ñˆ��uå˜ Ñ'Ô'Ð'Ý˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ð%Ð%r   c                 ó|   — | j         }| j        }| j        }t          |||dd¬¦  «        }d}t	          ||¦  «         d S )Nr   rŠ   r!   )r2   Úx_edgeÚy_edgerI   )r   r   r   r   r
   )r&   r   r   r   rJ   rK   s         r   Útest_2d_result_attributesz-TestBinnedStatistic.test_2d_result_attributesÇ   sJ   € ØŒFˆØŒFˆØŒFˆå! ! Q¨¨7¸Ð;Ñ;Ô;ˆØCˆ
Ý˜C Ñ,Ô,Ð,Ð,Ð,r   c                 óú   — | j         }| j        }| j        }t          |||dd¬¦  «        \  }}}}t	          j        ||d|¬¦  «        \  }}	}
t          ||¦  «         t          ||	¦  «         t          ||
¦  «         d S )Nr0   rŠ   r!   rN   r‹   )r&   r   r   r   rP   r�   rŽ   r)   rQ   r�   r�   s              r   Útest_2d_sumzTestBinnedStatistic.test_2d_sumÐ   s�   € ØŒFˆØŒFˆØŒFˆå!4°Q¸¸1¸eÈ!Ð!LÑ!LÔ!LÑˆˆe�U˜BÝœ^¨A¨q°qÀ!ÐDÑDÔDÑˆˆe�Uå˜˜dÑ#Ô#Ð#Ý˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ð%Ð%r   c                 ó  — | j         }| j        }| j        }t          |||dd¬¦  «        \  }}}}t          |||t          j        d¬¦  «        \  }}	}
}t          ||¦  «         t          ||	¦  «         t          ||
¦  «         d S ©Nr.   rŠ   r!   ©r   r   r   r   r$   r.   r   ©r&   r   r   r   r8   r�   rŽ   r)   r9   r�   r�   s              r   Útest_2d_meanz TestBinnedStatistic.test_2d_meanÜ   s‘   € ØŒFˆØŒFˆØŒFˆå"5°a¸¸A¸vÈAÐ"NÑ"NÔ"NÑˆˆu�e˜RÝ"5°a¸¸A½r¼wÈQÐ"OÑ"OÔ"OÑˆˆu�e˜Rå˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ð%Ð%r   c                 ó  — | j         }| j        }| j        }t          |||dd¬¦  «        \  }}}}t          |||t          j        d¬¦  «        \  }}	}
}t          ||¦  «         t          ||	¦  «         t          ||
¦  «         d S r™   rš   r›   s              r   Útest_2d_mean_unicodez(TestBinnedStatistic.test_2d_mean_unicodeè   s˜   € ØŒFˆØŒFˆØŒFˆÝ"5Øˆq�!�V !ð#%ñ #%ô #%Ñˆˆu�e˜Rå"5°a¸¸A½r¼wÈQÐ"OÑ"OÔ"OÑˆˆu�e˜RÝ˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ð%Ð%r   c                 ó  — | j         }| j        }| j        }t          |||dd¬¦  «        \  }}}}t          |||t          j        d¬¦  «        \  }}	}
}t          ||¦  «         t          ||	¦  «         t          ||
¦  «         d S )Nr6   rŠ   r!   )r   r   r   r   r$   r6   r   r›   s              r   Útest_2d_stdzTestBinnedStatistic.test_2d_stdó   ó‘   € ØŒFˆØŒFˆØŒFˆå"5°a¸¸A¸uÈ1Ð"MÑ"MÔ"MÑˆˆu�e˜RÝ"5°a¸¸A½r¼vÈAÐ"NÑ"NÔ"NÑˆˆu�e˜Rå˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ð%Ð%r   c                 ó  — | j         }| j        }| j        }t          |||dd¬¦  «        \  }}}}t          |||t          j        d¬¦  «        \  }}	}
}t          ||¦  «         t          ||	¦  «         t          ||
¦  «         d S )NrZ   rŠ   r!   )r   r   r   r   r$   rZ   r   r›   s              r   Útest_2d_minzTestBinnedStatistic.test_2d_minÿ   r¡   r   c                 ó  — | j         }| j        }| j        }t          |||dd¬¦  «        \  }}}}t          |||t          j        d¬¦  «        \  }}	}
}t          ||¦  «         t          ||	¦  «         t          ||
¦  «         d S )Nr]   rŠ   r!   )r   r   r   r   r$   r]   r   r›   s              r   Útest_2d_maxzTestBinnedStatistic.test_2d_max  r¡   r   c                 ó  — | j         }| j        }| j        }t          |||dd¬¦  «        \  }}}}t          |||t          j        d¬¦  «        \  }}	}
}t          ||¦  «         t          ||	¦  «         t          ||
¦  «         d S )Nr/   rŠ   r!   )r   r   r   r   r$   r/   r   r›   s              r   Útest_2d_medianz"TestBinnedStatistic.test_2d_median  s¡   € ØŒFˆØŒFˆØŒFˆå"5Øˆq�!�X Að#'ñ #'ô #'Ñˆˆu�e˜Rå"5Øˆq�!•R”Y Qð#(ñ #(ô #(Ñˆˆu�e˜Rõ 	˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ý˜˜uÑ%Ô%Ð%Ð%Ð%r   c                 ót  ‡
— | j         d d…         }| j        d d…         }| j        d d…         }t          |||dd¬¦  «        \  }}}Š
t	          j        g d¢¦  «        }ˆ
fd„t	          j        ‰
¦  «        D ¦   «         }t          ‰
|¦  «         ||                     ¦   «                  }	t          ||	¦  «         d S )Nrb   r   r   r!   )é   é   é   é   rª   r©   é   r©   r©   é   r«   r­   r¬   r«   rª   r¬   r«   r«   rª   é   c                 ó@   •— g | ]}‰|k                          ¦   «         ‘ŒS re   rf   rg   s     €r   rj   z7TestBinnedStatistic.test_2d_bincode.<locals>.<listcomp>/  rk   r   )	r   r   r   r   r$   rl   rm   r   Únonzero)r&   r   r   r   r'   r�   rŽ   rn   ro   Ú	count1adjr)   s             @r   Útest_2d_bincodez#TestBinnedStatistic.test_2d_bincode%  sÕ   ø€ ØŒF�3�B�3ŒKˆØŒF�3�B�3ŒKˆØŒF�3�B�3ŒKˆå#6Øˆq�!�W 1ð$&ñ $&ô $&Ñ ˆ��u˜båŒhð 0ð 0ð 0ñ 1ô 1ˆð :Ð9Ð9Ð9­2¬9°R©=¬=Ð9Ñ9Ô9ˆå˜˜CÑ Ô Ð Ø˜6Ÿ>š>Ñ+Ô+Ô,ˆ	Ý˜ 	Ñ*Ô*Ð*Ð*Ð*r   c                 ó�  — | j         }| j        }| j        }| j        }t	          |||dd¬¦  «        \  }}}}t	          |||dd¬¦  «        \  }	}
}}t	          ||||gdd¬¦  «        \  }}}}t          |d         |¦  «         t          |d         |	¦  «         t          ||¦  «         t          ||¦  «         t          ||¦  «         d S )Nr.   r¯   r!   r   r	   )r   r   r   r   r   r   )r&   r   r   r   r   r‚   Úbinx1vÚbiny1vr„   r…   Úbinx1wÚbiny1wr‡   r9   r�   r�   rn   s                    r   Útest_2d_multi_valuesz(TestBinnedStatistic.test_2d_multi_values5  sú   € ØŒFˆØŒFˆØŒFˆØŒFˆå':Øˆq�!�V !ð(%ñ (%ô (%Ñ$ˆ�˜ å':Øˆq�!�V !ð(%ñ (%ô (%Ñ$ˆ�˜ å#6Øˆq�1�a�&˜& qð$*ñ $*ô $*Ñ ˆˆu�e˜Sõ 	˜˜aœ &Ñ)Ô)Ð)Ý˜˜aœ &Ñ)Ô)Ð)Ý˜ Ñ&Ô&Ð&Ý˜ Ñ&Ô&Ð&Ý˜˜cÑ"Ô"Ð"Ð"Ð"r   c                 ód  — | j         }| j        }| j        }t          ||dd¬¦  «        \  }}}t          ||dd¬¦  «        \  }}}t	          |||ddd¬¦  «        \  }	}
}}t          j        ||d¬	¦  «        }t          j        ||d¬	¦  «        }|||                     ¦   «         k    xx         d
z  cc<   |||                     ¦   «         k    xx         d
z  cc<   t          ||d         ¦  «         t          ||d
         ¦  «         t          ||d         ¦  «         t          ||d
         ¦  «         d S )Nr.   rb   r!   r    )rb   r    T©r"   Úexpand_binnumbersÚright)Úsider	   r   )	r   r   r   r   r   r$   Úsearchsortedr]   r   )r&   r   r   r   ÚstatÚedgesxÚbcxÚedgesyÚbcyr9   Úedgesx2Úedgesy2rn   Úbcx3Úbcy3s                  r   Útest_2d_binnumbers_unraveledz0TestBinnedStatistic.test_2d_binnumbers_unraveledH  sT  € ØŒFˆØŒFˆØŒFˆå,¨Q°°6ÀÐCÑCÔCÑˆˆf�cÝ,¨Q°°6ÀÐCÑCÔCÑˆˆf�cå':Øˆq�!�V (¸dð(Dñ (Dô (DÑ$ˆˆw˜ õ Œ˜v q¨wÐ7Ñ7Ô7ˆÝŒ˜v q¨wÐ7Ñ7Ô7ˆð 	ˆQ�!—%’%‘'”'Š\ÐÐÔ˜aÑÐÐÑØˆQ�!—%’%‘'”'Š\ÐÐÔ˜aÑÐÐÑå˜˜S œVÑ$Ô$Ð$Ý˜˜S œVÑ$Ô$Ð$Ý˜˜c !œfÑ%Ô%Ð%Ý˜˜c !œfÑ%Ô%Ð%Ð%Ð%r   c                 óÂ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          j        |d¬¦  «        \  }}t          ||¦  «         t          ||¦  «         d S )Nr   r   r!   )r   r   r   r$   Úhistogramddr   )r&   r   r   r'   r(   r)   r*   r+   s           r   Útest_dd_countz!TestBinnedStatistic.test_dd_count_  sk   € ØŒFˆØŒFˆå0°°A°wÀQÐGÑGÔGÑˆ�˜Ýœ¨°Ð2Ñ2Ô2‰ˆ�å˜ Ñ'Ô'Ð'Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 ól   — | j         }| j        }t          ||dd¬¦  «        }d}t          ||¦  «         d S )Nr   r   r!   rG   )r   r   r   r
   )r&   r   r   rJ   rK   s        r   Útest_dd_result_attributesz-TestBinnedStatistic.test_dd_result_attributesi  sA   € ØŒFˆØŒFˆå! ! Q¨°aÐ8Ñ8Ô8ˆØ<ˆ
Ý˜C Ñ,Ô,Ð,Ð,Ð,r   c                 óF  — | j         }| j        }t          ||dd¬¦  «        \  }}}t          j        |d|¬¦  «        \  }}t          ||t          j        d¬¦  «        \  }}	}t          ||¦  «         t          ||¦  «         t          ||¦  «         t          ||	¦  «         d S )Nr0   r   r!   rN   )r   r   r   r$   rË   r0   r   )
r&   r   r   rP   r(   r)   rQ   r+   Úsum3Úedges3s
             r   Útest_dd_sumzTestBinnedStatistic.test_dd_sumq  s¬   € ØŒFˆØŒFˆå.¨q°!°UÀÐCÑCÔCÑˆˆf�bÝ”~ a¨a¸Ð;Ñ;Ô;‰ˆˆfÝ.¨q°!µR´VÀ!ÐDÑDÔDÑˆˆf�bå˜˜dÑ#Ô#Ð#Ý˜ Ñ'Ô'Ð'Ý˜˜dÑ#Ô#Ð#Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S )Nr.   r   r!   )r   r   r   r$   r.   r   ©r&   r   r   r8   r(   r)   r9   r+   s           r   Útest_dd_meanz TestBinnedStatistic.test_dd_mean~  sr   € ØŒFˆØŒFˆå/°°1°fÀ1ÐEÑEÔEÑˆˆv�rÝ/°°1µb´gÀAÐFÑFÔFÑˆˆv�rå˜˜uÑ%Ô%Ð%Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S )Nr6   r   r!   )r   r   r   r$   r6   r   rÔ   s           r   Útest_dd_stdzTestBinnedStatistic.test_dd_stdˆ  ór   € ØŒFˆØŒFˆå/°°1°eÀ!ÐDÑDÔDÑˆˆv�rÝ/°°1µb´fÀ1ÐEÑEÔEÑˆˆv�rå˜˜uÑ%Ô%Ð%Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S )NrZ   r   r!   )r   r   r   r$   rZ   r   rÔ   s           r   Útest_dd_minzTestBinnedStatistic.test_dd_min’  rØ   r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S )Nr]   r   r!   )r   r   r   r$   r]   r   rÔ   s           r   Útest_dd_maxzTestBinnedStatistic.test_dd_maxœ  rØ   r   c                 óÒ   — | j         }| j        }t          ||dd¬¦  «        \  }}}t          ||t          j        d¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         d S )Nr/   r   r!   )r   r   r   r$   r/   r   rÔ   s           r   Útest_dd_medianz"TestBinnedStatistic.test_dd_median¦  sr   € ØŒFˆØŒFˆå/°°1°hÀQÐGÑGÔGÑˆˆv�rÝ/°°1µb´iÀaÐHÑHÔHÑˆˆv�rå˜˜uÑ%Ô%Ð%Ý˜ Ñ'Ô'Ð'Ð'Ð'r   c                 óR  ‡— | j         d d…         }| j        d d…         }t          ||dd¬¦  «        \  }}Št          j        g d¢¦  «        }ˆfd„t          j        ‰¦  «        D ¦   «         }t          ‰|¦  «         ||                     ¦   «                  }t          ||¦  «         d S )Nrb   r   r   r!   )é?   é!   éV   éS   éX   éC   é9   rá   é*   é)   éR   rã   é\   é    é$   é[   é+   éW   éQ   rð   c                 ó@   •— g | ]}‰|k                          ¦   «         ‘ŒS re   rf   rg   s     €r   rj   z7TestBinnedStatistic.test_dd_bincode.<locals>.<listcomp>¸  rk   r   )r   r   r   r$   rl   rm   r   r±   )	r&   r   r   r'   r(   rn   ro   r²   r)   s	           @r   Útest_dd_bincodez#TestBinnedStatistic.test_dd_bincode°  s»   ø€ ØŒF�3�B�3ŒKˆØŒF�3�B�3ŒKˆå0°°A°wÀQÐGÑGÔGÑˆ�˜ÝŒhð 4ð 4ð 4ñ 5ô 5ˆð :Ð9Ð9Ð9­2¬9°R©=¬=Ð9Ñ9Ô9ˆå˜˜CÑ Ô Ð Ø˜6Ÿ>š>Ñ+Ô+Ô,ˆ	Ý˜ 	Ñ*Ô*Ð*Ð*Ð*r   c                 ó¤  — | j         }| j        }| j        }dddddddt          j        fD ]¥}t          |||d¬	¦  «        \  }}}t          |||d¬	¦  «        \  }}	}
t          |||g|d¬	¦  «        \  }}}t          |d
         |¦  «         t          |d         |¦  «         t          ||¦  «         t          |	|¦  «         t          ||¦  «         Œ¦d S )Nr   r0   r.   r6   rZ   r]   r/   r¯   r!   r   r	   )r   r   r   r$   r6   r   r   )r&   r   r   r   rÀ   r‚   rƒ   r„   r…   r†   r‡   r9   r+   rn   s                 r   Útest_dd_multi_valuesz(TestBinnedStatistic.test_dd_multi_values¾  sü   € ØŒFˆØŒFˆØŒFˆà˜e V¨U°E¸5À(Ý”Vðð 		'ð 		'ˆDå$7¸¸1¸dÈÐ$KÑ$KÔ$KÑ!ˆF�G˜TÝ$7¸¸1¸dÈÐ$KÑ$KÔ$KÑ!ˆF�G˜TÝ!4°Q¸¸A¸ÀÈ1Ð!MÑ!MÔ!MÑˆE�6˜3Ý˜E !œH fÑ-Ô-Ð-Ý˜E !œH fÑ-Ô-Ð-Ý˜G VÑ,Ô,Ð,Ý˜G VÑ,Ô,Ð,Ý˜D #Ñ&Ô&Ð&Ð&ð		'ð 		'r   c                 óœ  — | j         }| j        }t          |d d …df         |dd¬¦  «        \  }}}t          |d d …df         |dd¬¦  «        \  }}}t          |d d …df         |dd¬¦  «        \  }}}	t          ||dd	d
¬¦  «        \  }
}}t	          ||d         ¦  «         t	          ||d         ¦  «         t	          |	|d         ¦  «         d S )Nr   r.   rs   r!   r	   rb   rc   r    )rs   rb   r    Tr»   )r   r   r   r   r   )r&   r   r   rÀ   rÁ   rÂ   rÃ   rÄ   ÚedgeszÚbczr9   r+   rn   s                r   Útest_dd_binnumbers_unraveledz0TestBinnedStatistic.test_dd_binnumbers_unraveledÎ  sø   € ØŒFˆØŒFˆå,¨Q¨q¨q¨q°!¨t¬W°a¸ÀbÐIÑIÔIÑˆˆf�cÝ,¨Q¨q¨q¨q°!¨t¬W°a¸ÀbÐIÑIÔIÑˆˆf�cÝ,¨Q¨q¨q¨q°!¨t¬W°a¸ÀbÐIÑIÔIÑˆˆf�cå0Øˆq�&˜|¸tðEñ Eô EÑˆˆv�sõ 	˜˜S œVÑ$Ô$Ð$Ý˜˜S œVÑ$Ô$Ð$Ý˜˜S œVÑ$Ô$Ð$Ð$Ð$r   c                 óV  — t           j                             d¦  «        }|                     d¦  «        }|                     d¦  «        }t          j        ddd¦  «        }|||f}t	          ||d|¬¦  «        }|j        }t	          ||d|¬	¦  «        }|j        }t          ||¦  «         d S )
Nl   g
óF ©é'  r   rû   r   r	   r    r.   r!   )Úbinned_statistic_result)r$   rw   rx   Úlinspacer   r2   r   )r&   r   r   r   r"   ÚresultrÀ   r9   s           r   Útest_dd_binned_statistic_resultz3TestBinnedStatistic.test_dd_binned_statistic_resultÝ  s´   € åŒi×#Ò# JÑ/Ô/ˆØ�JŠJ�zÑ"Ô"ˆØ�JŠJ�uÑÔˆÝŒ{˜1˜a Ñ$Ô$ˆØ�d˜DÐ!ˆå$ Q¨¨6¸Ð=Ñ=Ô=ˆØÔˆå$ Q¨¨6Ø=CðEñ Eô EˆàÔ ˆå˜˜eÑ$Ô$Ð$Ð$Ð$r   c                 ó|  — t           j                             d¦  «        }|                     d¦  «        }|                     d¦  «        }t          j        ddd¦  «        }t          j        |d¦  «        }|||f}t          t          d¬¦  «        5  t          ||d	|¬
¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NiÍÿƒCrú   rû   r   r	   r    zdifference is numerically 0©Úmatchr.   r!   )r$   rw   rx   rý   ÚappendrA   rB   r   )r&   r   r   r   r"   s        r   Útest_dd_zero_dedgesz'TestBinnedStatistic.test_dd_zero_dedgesî  sø   € ÝŒi×#Ò# JÑ/Ô/ˆØ�JŠJ�zÑ"Ô"ˆØ�JŠJ�uÑÔˆÝŒ{˜1˜a Ñ$Ô$ˆÝŒy˜˜qÑ!Ô!ˆØ�d˜DÐ!ˆÝ�:Ð-JÐKÑKÔKð 	9ð 	9Ý  1 f°4Ð8Ñ8Ô8Ð8ð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9ð 	9ð 	9s   ÂB1Â1B5Â8B5c                 ó¨  — t          t          d¬¦  «        5  t          | j        g| j        ddgg¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          d¬¦  «        5  t          | j        | j        g| j        ddgddgg¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          d¬¦  «        5  t          | j        | j        g| j        ddgddgg¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          d¬¦  «        5  t          | j        | j        g| j        ddgg¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	NzIn range, start must be <= stopr  r	   r   ru   z.In dimension 1 of range, start must be <= stopz.In dimension 2 of range, start must be <= stopz(range given for 1 dimensions; 2 required)rA   rB   r   r   r   r   )r&   s    r   Útest_dd_range_errorsz(TestBinnedStatistic.test_dd_range_errorsø  s¯  € õ �:Ø!BðDñ Dô Dð 	0ð 	0å ¤ ¨$¬&Ø()¨1 v hð0ñ 0ô 0ð 0ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0õ ÝØFðHñ Hô Hð 	8ð 	8õ   ¤¨¬Ð 0°$´&Ø()¨1 v°°1¨vÐ&6ð8ñ 8ô 8ð 8ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8õ
 ÝØFðHñ Hô Hð 	8ð 	8õ   ¤¨¬Ð 0°$´&Ø()¨1 v°°1¨vÐ&6ð8ñ 8ô 8ð 8ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8õ
 ÝØ@ðBñ Bô Bð 	0ð 	0õ   ¤¨¬Ð 0°$´&Ø()¨1 v hð0ñ 0ô 0ð 0ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0ð 	0ð 	0sG   —!AÁAÁAÁ%*BÂBÂ"BÂ<*C2Ã2C6Ã9C6Ä'EÅEÅEc                 óØ   — t          j        ddgt           j        ¬¦  «        }t          |d dd¬¦  «        \  }}}t	          |t          j        g d¢t           j        ¬¦  «        ¦  «         d S )Nr   gÂhwÄøÛ?)Údtyper   rŠ   r!   )r	   r   r   r   r	   )r$   rl   Úfloat32r   r   Úfloat64)r&   r   rÀ   r{   s       r   Útest_binned_statistic_float32z1TestBinnedStatistic.test_binned_statistic_float32  sc   € ÝŒH�a˜�_­B¬JÐ7Ñ7Ô7ˆÝ% a¨¨w¸QÐ?Ñ?Ô?‰
ˆˆa�Ý˜�bœh   ½b¼jÐIÑIÔIÑJÔJÐJÐJÐJr   c                 ób  — g }d}t          |¦  «        D ]}|dd|z  z
  gz  }Œt          j        ddd¦  «        }t          |t          j        t          |¦  «        ¦  «        |gd¬¦  «        \  }}}t          j        ||¬¦  «        \  }}	t          ||¦  «         t          |d         |	¦  «         d S )	Nrb   r	   gš™™™™™¹?r   rª   r0   )r"   r2   r!   )rv   r$   rý   r   ÚonesÚlenr%   r   )
r&   r   r   ri   r"   rP   r(   r)   rQ   r+   s
             r   Útest_gh14332z TestBinnedStatistic.test_gh14332  sÂ   € àˆØˆÝ�t‘”ð 	ð 	ˆAØ�!�C˜‘F‘(�‰OˆAˆAåŒ{˜1˜Q˜rÑ"Ô"ˆÝ.¨qµ"´'½#¸a¹&¼&±/´/Ø59°FÀeðMñ Mô MÑˆˆf�bå”| A¨DÐ1Ñ1Ô1‰ˆˆfå˜˜dÑ#Ô#Ð#Ý˜˜qœ	 6Ñ*Ô*Ð*Ð*Ð*r   r  r2   r   c                 ó0   — | dz                        ¦   «         S )Nrc   rf   ©r   s    r   ú<lambda>zTestBinnedStatistic.<lambda>&  s   € °a¸±d·Z²Z±\´\€ r   c                 ó6   — | dz                        ¦   «         dz  S )Nrc   ù              ð?rf   r  s    r   r  zTestBinnedStatistic.<lambda>'  s   € °a¸±d·Z²Z±\´\ÀBÑ5F€ r   c                 ó"  ‡— ˆfd„}t           j                             d¦  «        }d}|                     |¬¦  «        }|dk    }|                     |¬¦  «        }|t           j        u r||                     |¬¦  «        dz  z   }t	          ||‰d¬¦  «        \  }	}
}
t          j         |||          ¦  «         |||         ¦  «        g¦  «        }t          |	|¦  «         |	j        t          j        |j        t           j	        ¦  «        k    sJ ‚d S )	Nc                 óD   •— ‰dk    rt          | ¦  «        n
 ‰| ¦  «        S )Nr   )r  )r   r2   s    €r   Úref_statisticz6TestBinnedStatistic.test_dd_all.<locals>.ref_statistic)  s%   ø€ Ø&¨'Ò1Ð1•3�q‘6”6�6°y°yÀ±|´|ÐCr   l   #tÆ%i r    r   g      à?r  rc   r!   )
r$   rw   rx   Ú
complex128r   rl   r   r  Úresult_typer
  )r&   r  r2   r  r   Únr   ri   r   rÀ   r{   Úrefs     `         r   Útest_dd_allzTestBinnedStatistic.test_dd_all#  s  ø€ ð	Dð 	Dð 	Dð 	Dð 	Dõ Œi×#Ò#Ð$4Ñ5Ô5ˆØˆØ�JŠJ˜AˆJÑÔˆØ�ŠHˆØ�JŠJ˜AˆJÑÔˆØ•B”MÐ!Ð!Ø�C—J’J A�JÑ&Ô& rÑ)Ñ)ˆAå(¨¨A¨y¸qÐAÑAÔA‰
ˆˆa�ÝŒh˜˜ a¨¨¤eÑ,Ô,¨m¨m¸A¸a¼DÑ.AÔ.AÐBÑCÔCˆÝ˜˜cÑ"Ô"Ð"ØŒz�Rœ^¨C¬Iµr´zÑBÔBÒBÐBÐBÐBÐBÐBr   N)=Ú__name__Ú
__module__Ú__qualname__Úclassmethodr   r,   r3   r:   r=   rE   rL   rR   rU   rW   r[   r^   r`   rp   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  ÚpytestÚmarkÚparametrizer$   r
  r  r.   r/   r0   r6   rZ   r]   r  re   r   r   r   r      sG  € € € € € àð,ð ,ñ „[ð,ð(ð (ð (ð7ð 7ð 7ð&ð &ð &ð&ð &ð &ðLð Lð Lð-ð -ð -ð(ð (ð (ð(ð (ð (ð(ð (ð (ð(ð (ð (ð(ð (ð (ð(ð (ð (ð(ð (ð (ð+ð +ð +ð#ð #ð #ð&ð &ð &ð-ð -ð -ð
&ð 
&ð 
&ð
&ð 
&ð 
&ð	&ð 	&ð 	&ð
&ð 
&ð 
&ð
&ð 
&ð 
&ð
&ð 
&ð 
&ð&ð &ð &ð+ð +ð +ð #ð #ð #ð&&ð &ð &ð.(ð (ð (ð-ð -ð -ð(ð (ð (ð(ð (ð (ð(ð (ð (ð(ð (ð (ð(ð (ð (ð(ð (ð (ð+ð +ð +ð'ð 'ð 'ð %ð %ð %ð%ð %ð %ð"9ð 9ð 9ð0ð 0ð 0ð.Kð Kð Kð
+ð +ð +ð „[×Ò˜W r¤z°2´=Ð&AÑBÔBØ„[×Ò˜[¨2¬7°B´I¸r¼vÀrÄvØ+-¬6°2´6¸7Ø+AÐ+AØ+FÐ+Fð+Hñ Iô IðCð Cñ	Iô Iñ CÔBð
Cð Cð Cr   r   )Únumpyr$   Únumpy.testingr   r!  r   rA   Úscipy.statsr   r   r   Úscipy._lib._utilr   Úcommon_testsr
   r   re   r   r   ú<module>r)     sÚ   ðØ Ð Ð Ð Ø )Ð )Ð )Ð )Ð )Ð )Ø €€€Ø *Ð *Ð *Ð *Ð *Ð *ð.ð .ð .ð .ð .ð .ð .ð .ð .ð .à /Ð /Ð /Ð /Ð /Ð /à -Ð -Ð -Ð -Ð -Ð -ðkCð kCð kCð kCð kCñ kCô kCð kCð kCð kCr   