Ë
    ž…j•  ã                   ó`   — d dl Zd dlZd dlmZ d dlZd dlmZ d dlm	Z
 d dlmZ  G d„ d«      Zy)é    N)ÚDatetimeTZDtype)ÚNaT)ÚDatetimeArrayc                   ó&  — e Zd Zej                  d„ «       Zd„ Zej                  j                  dddg«      d„ «       Z	ej                  j                  dddg«      d„ «       Z
d„ Zd	„ Zej                  j                  d
«      d„ «       Zd„ Zd„ Zd„ Zy)ÚTestReductionsc                 ó‚   — |}|�t        |¬«      nt        j                  d«      }t        j                  g d¢|¬«      }|S )z;Fixture returning DatetimeArray with parametrized timezones©ÚtzúM8[ns])ú
2000-01-03r   r   ú
2000-01-02ú
2000-01-05z
2000-01-04©Údtype)r   Únpr   r   Ú_from_sequence)ÚselfÚtz_naive_fixturer
   r   Úarrs        ún/root/aria/tools/markitdown-venv/lib/python3.12/site-packages/pandas/tests/arrays/datetimes/test_reductions.pyÚarr1dzTestReductions.arr1d   sC   € ð ˆØ*,¨.” 2Õ&¼b¿h¹hÀxÓ>PˆÜ×*Ñ*òð ô

ˆð ˆ
ó    c                 ó  — |}|j                  |«      }|j                  }|j                  «       }t        j                  d|¬«      j                  |«      }||k(  sJ ‚|j
                  |j
                  k(  sJ ‚|j                  «       }t        j                  d|¬«      j                  |«      }||k(  sJ ‚|j
                  |j
                  k(  sJ ‚|j                  d¬«      }|t        u sJ ‚|j                  d¬«      }|t        u sJ ‚y )Nr   r	   r   F©Úskipna)Úas_unitr
   ÚminÚpdÚ	TimestampÚunitÚmaxr   )r   r   r    r   r
   ÚresultÚexpecteds          r   Útest_min_maxzTestReductions.test_min_max   sê   € ØˆØ�k‰k˜$ÓˆØ�V‰Vˆà—‘“ˆÜ—<‘< °Ô4×<Ñ<¸TÓBˆØ˜Ò!Ð!Ð!Ø�{‰{˜hŸm™mÒ+Ð+Ð+à—‘“ˆÜ—<‘< °Ô4×<Ñ<¸TÓBˆØ˜Ò!Ð!Ð!Ø�{‰{˜hŸm™mÒ+Ð+Ð+à—‘ �Ó&ˆØœ‰}Ðˆ}à—‘ �Ó&ˆØœ‰}Ð‰}r   r
   Nz
US/Centralc                 óè   — |�t        |¬«      nt        j                  d«      }t        j                  g |¬«      }|j                  |¬«      }|t        u sJ ‚|j                  |¬«      }|t        u sJ ‚y )Nr	   r   r   r   )r   r   r   r   r   r   r   r!   )r   r   r
   r   r   r"   s         r   Útest_min_max_emptyz!TestReductions.test_min_max_empty4   se   € à*,¨.” 2Õ&¼b¿h¹hÀxÓ>PˆÜ×*Ñ*¨2°UÔ;ˆØ—‘ �Ó'ˆØœ‰}Ðˆ}à—‘ �Ó'ˆØœ‰}Ð‰}r   c                 ó.  — |�t        |¬«      nt        j                  d«      }t        j                  g |¬«      }|j                  |¬«      }|t        u sJ ‚|j                  dd«      }|j                  d|¬«      }t        |«      j	                  t        t        t        g|j                  ¬«      }t        j                  ||«       |j                  d|¬«      }t        |«      j	                  g |j                  ¬«      }t        j                  ||«       y )	Nr	   r   r   r   r   é   ©Úaxisr   é   )r   r   r   r   r   Úmedianr   ÚreshapeÚtypeÚtmÚassert_equal)r   r   r
   r   r   r"   r#   s          r   Útest_median_emptyz TestReductions.test_median_empty>   sÙ   € à*,¨.” 2Õ&¼b¿h¹hÀxÓ>PˆÜ×*Ñ*¨2°UÔ;ˆØ—‘ 6�Ó*ˆØœ‰}Ðˆ}à�k‰k˜!˜QÓˆØ—‘ ¨6�Ó2ˆÜ˜“9×+Ñ+¬S´#´s¨OÀ3Ç9Á9Ð+ÓMˆÜ
�‰˜ Ô)à—‘ ¨6�Ó2ˆÜ˜“9×+Ñ+¨B°c·i±iÐ+Ó@ˆÜ
�‰˜ Õ)r   c                 ó   — |}|j                  «       }||d   k(  sJ ‚|j                  d¬«      }|t        u sJ ‚|j                  «       j                  d¬«      }||d   k(  sJ ‚|j                  d¬«      }||d   k(  sJ ‚y )Nr   Fr   ©r*   )r,   r   Údropna)r   r   r   r"   s       r   Útest_medianzTestReductions.test_medianN   s�   € Øˆà—‘“ˆØ˜˜Q™ÒÐÐØ—‘ 5�Ó)ˆØœ‰}Ðˆ}à—‘“×$Ñ$¨EÐ$Ó2ˆØ˜˜Q™ÒÐÐà—‘ �Ó#ˆØ˜˜Q™ÒÐÑr   c                 ó  — |}|j                  d¬«      |j                  «       k(  sJ ‚|j                  dd¬«      t        u sJ ‚d}t        j                  t        |¬«      5  |j                  d¬«       d d d «       y # 1 sw Y   y xY w)Nr   r3   Fr)   z"abs\(axis\) must be less than ndim)Úmatchr+   )r,   r   ÚpytestÚraisesÚ
ValueError)r   r   r   Úmsgs       r   Útest_median_axiszTestReductions.test_median_axis\   sw   € ØˆØ�z‰z˜qˆzÓ! S§Z¡Z£\Ò1Ð1Ð1Ø�z‰z˜q¨ˆzÓ/´3Ñ6Ð6Ð6à3ˆÜ�]‰]œ:¨SÔ1ñ 	Ø�J‰J˜AˆJÔ÷	÷ 	ñ 	ús   Á A<Á<Bz/ignore:All-NaN slice encountered:RuntimeWarningc                 ó®  — |j                  dd«      }|j                  «       |j                  «       k(  sJ ‚|j                  d¬«      t        u sJ ‚|j                  d¬«      }|}t        j                  ||«       |j                  dd¬«      }|}t        j                  ||«       |j                  d¬«      }t        |«      j                  |j                  «       g|j                  ¬«      }t        j                  ||«       |j                  dd¬«      }t        |«      j                  t        g|j                  ¬«      }t        j                  ||«       y )	Nr+   éÿÿÿÿFr   r   r3   r)   r   )r-   r,   r   r/   r0   r.   r   r   )r   r   r   r"   r#   s        r   Útest_median_2dzTestReductions.test_median_2de   s  € à�m‰m˜A˜rÓ"ˆð �z‰z‹|˜uŸ|™|›~Ò-Ð-Ð-Ø�z‰z ˆzÓ'¬3Ñ.Ð.Ð.ð —‘ �Ó#ˆØˆÜ
�‰˜ Ô)ð —‘ ¨5�Ó1ˆØˆÜ
�‰˜ Ô)ð —‘ �Ó#ˆÜ˜“9×+Ñ+¨U¯\©\«^Ð,<ÀCÇIÁIÐ+ÓNˆÜ
�‰˜ Ô)à—‘ ¨5�Ó1ˆÜ˜“9×+Ñ+¬S¨E¸¿¹Ð+ÓCˆÜ
�‰˜ Õ)r   c                 ó,  — |}|d   dt        j                  d¬«      z  z   }|j                  «       }||k(  sJ ‚|j                  d¬«      }|t        u sJ ‚|j	                  «       j                  d¬«      }||k(  sJ ‚|j                  d¬«      }||k(  sJ ‚y )Nr   gš™™™™™Ù?r+   )ÚdaysFr   r3   )r   Ú	TimedeltaÚmeanr   r4   )r   r   r   r#   r"   s        r   Ú	test_meanzTestReductions.test_mean€   sŸ   € Øˆð �q‘6˜C¤"§,¡,°AÔ"6Ñ6Ñ6ˆà—‘“ˆØ˜Ò!Ð!Ð!Ø—‘ �Ó'ˆØœ‰}Ðˆ}à—‘“×"Ñ"¨%Ð"Ó0ˆØ˜Ò!Ð!Ð!à—‘˜q�Ó!ˆØ˜Ò!Ð!Ñ!r   c                 óª  — t        j                  dddd¬«      }|j                  j                  dd«      }|j	                  d¬	«      }|d
   }t        j                  ||«       |j	                  d
¬	«      }|d d …df   t        j                  d¬«      z   }t        j                  ||«       |j	                  d ¬	«      }|j	                  «       }||k(  sJ ‚y )Nz
2016-01-01é   z
US/PacificÚns)Úperiodsr
   r    r(   é   r   r3   r+   é   )Úhours)r   Ú
date_rangeÚ_datar-   rC   r/   Úassert_datetime_array_equalrB   )r   ÚdtiÚdtar"   r#   s        r   Útest_mean_2dzTestReductions.test_mean_2d‘   s¹   € Ü�m‰m˜L°!¸È4ÔPˆØ�i‰i×Ñ  1Ó%ˆà—‘˜q�Ó!ˆØ�q‘6ˆÜ
×&Ñ& v¨xÔ8à—‘˜q�Ó!ˆØ’q˜!�t‘9œrŸ|™|°"Ô5Ñ5ˆÜ
×&Ñ& v¨xÔ8à—‘˜t�Ó$ˆØ—8‘8“:ˆØ˜Ò!Ð!Ñ!r   c                 ó¨  — |d d }|j                  |¬«      t        u sJ ‚|j                  dd«      }|j                  d|¬«      }t        j                  t        t        t        g|j
                  ¬«      }t        j                  ||«       |j                  d|¬«      }|}t        j                  ||«       |j                  d |¬«      }|t        u sJ ‚y )Nr   r   r(   r)   r   r+   )rC   r   r-   r   r   r   r/   rN   )r   r   r   r   Úarr2dr"   r#   s          r   Útest_mean_emptyzTestReductions.test_mean_empty¡   s¹   € Ø�B�Qˆiˆà�x‰x˜vˆxÓ&¬#Ñ-Ð-Ð-à—‘˜A˜qÓ!ˆØ—‘ ¨6�Ó2ˆÜ ×/Ñ/´´c¼3°ÀsÇyÁyÔQˆÜ
×&Ñ& v¨xÔ8à—‘ ¨6�Ó2ˆØˆÜ
×&Ñ& v¨xÔ8à—‘ ¨f�Ó5ˆØœ‰}Ð‰}r   )Ú__name__Ú
__module__Ú__qualname__r8   Úfixturer   r$   ÚmarkÚparametrizer&   r1   r5   r<   Úfilterwarningsr?   rD   rQ   rT   © r   r   r   r      s¯   „ Ø‡^�^ñó ðò"ð* ‡[�[×Ñ˜T D¨,Ð#7Ó8ñó 9ðð ‡[�[×Ñ˜T D¨,Ð#7Ó8ñ*ó 9ð*ò òð ‡[�[×ÑÐ QÓRñ*ó Sð*ò4"ò""ó r   r   )Únumpyr   r8   Úpandas.core.dtypes.dtypesr   Úpandasr   r   Úpandas._testingÚ_testingr/   Úpandas.core.arraysr   r   r\   r   r   ú<module>rc      s&   ðÛ Û å 5ã Ý Ý Ý ,÷dò dr   