+
    ÏÜ³j:)  ã                  óp  € R t ^ RIHt ^ RIHtHt ^ RIHtHt ^ RI	t
^ RIHtHtHt ^ RIHt ^ RIHtHt ^ RIHtHtHt ^ R	IHt ^ R
IHt ^ RIHt ]'       d   ^ RIHtH t H!t! ^ RI"H#t#H$t$ R R lt% ! R R]4      t& ! R R]&4      t' ! R R]&4      t(R R lt)R R lt*R R lt+R R lt,R R lt-R  R! lt.R# )"z–
Module responsible for execution of NDFrame.describe() method.

Method NDFrame.describe() delegates actual execution to function describe_ndframe().
)Úannotations)ÚABCÚabstractmethod)ÚTYPE_CHECKINGÚcastN)ÚDtypeObjÚNDFrameTÚnpt)Úvalidate_percentile)Úis_bool_dtypeÚis_numeric_dtype)Ú
ArrowDtypeÚDatetimeTZDtypeÚExtensionDtype)ÚFloat64Dtype)Úconcat)Úformat_percentiles)ÚCallableÚHashableÚSequence)Ú	DataFrameÚSeriesc          
     ó,   € V ^8„  d   QhRRRRRRRRRR/# )	é   Úobjr   Úincludeústr | Sequence[str] | NoneÚexcludeÚpercentilesú#Sequence[float] | np.ndarray | NoneÚreturn© )Úformats   "Ú]/home/luca/screen-checking/.venv/lib/python3.14/site-packages/pandas/core/methods/describe.pyÚ__annotate__r$   7   s<   € ÷ +"ñ +"à	ð+"ð (ð+"ð (ð	+"ð
 5ð+"ð ñ+"ó    c                óÜ   € \        V4      pV P                  ^8X  d   \        \        RV 4      R7      pM\	        \        RV 4      VVR7      pVP                  VR7      p\        \        V4      # )aÜ  Describe series or dataframe.

Called from pandas.core.generic.NDFrame.describe()

Parameters
----------
obj: DataFrame or Series
    Either dataframe or series to be described.
include : 'all', list-like of dtypes or None (default), optional
    A white list of data types to include in the result. Ignored for ``Series``.
exclude : list-like of dtypes or None (default), optional,
    A black list of data types to omit from the result. Ignored for ``Series``.
percentiles : list-like of numbers, optional
    The percentiles to include in the output. All should fall between 0 and 1.
    The default is ``[.25, .5, .75]``, which returns the 25th, 50th, and
    75th percentiles.

Returns
-------
Dataframe or series description.
r   ©r   r   )r   r   r   )r   )Ú_refine_percentilesÚndimÚSeriesDescriberr   ÚDataFrameDescriberÚdescriber   )r   r   r   r   Ú	describerÚresults   $$$$  r#   Údescribe_ndframer/   7   sm   € ô8 & kÓ2€Kð ‡x�x�1„}Ü#Ü�X˜sÓ#ô
‰	ô 'Ü�[ #Ó&ØØô
ˆ	ð ×Ñ¨KÐÓ8€FÜ”˜&Ó!Ð!r%   c                  ó<   € ] tR t^etRtR R lt]R R l4       tRtR# )ÚNDFrameDescriberAbstractz€Abstract class for describing dataframe or series.

Parameters
----------
obj : Series or DataFrame
    Object to be described.
c               ó    € V ^8„  d   QhRRRR/# )r   r   úDataFrame | Seriesr    ÚNoner!   )r"   s   "r#   r$   Ú%NDFrameDescriberAbstract.__annotate__n   s   € ÷ ñ Ð.ð °4ñ r%   c                	ó   € Wn         R # ©Nr'   )Úselfr   s   &&r#   Ú__init__Ú!NDFrameDescriberAbstract.__init__n   s   € ØŽr%   c               ó    € V ^8„  d   QhRRRR/# )r   r   úSequence[float] | np.ndarrayr    r3   r!   )r"   s   "r#   r$   r5   r   s   € ÷ ñ Ð$@ð ÐEWñ r%   c                ó   € R# )z�Do describe either series or dataframe.

Parameters
----------
percentiles : list-like of numbers
    The percentiles to include in the output.
Nr!   )r8   r   s   &&r#   r,   Ú!NDFrameDescriberAbstract.describeq   s   ‚ r%   r'   N)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r9   r   r,   Ú__static_attributes__r!   r%   r#   r1   r1   e   s    † ñõð ôó ôr%   r1   c                  ó2   € ] tR t^|t$ RtR]R&   R R ltRtR# )r*   z2Class responsible for creating series description.r   r   c               ó    € V ^8„  d   QhRRRR/# )r   r   r<   r    r   r!   )r"   s   "r#   r$   ÚSeriesDescriber.__annotate__�   s   € ÷ 4ñ 4Ð$@ð 4ÀVñ 4r%   c                	óR   € \        V P                  4      pV! V P                  V4      # r7   )Úselect_describe_funcr   )r8   r   Údescribe_funcs   && r#   r,   ÚSeriesDescriber.describe�   s&   € Ü,Ø�H‰Hó
ˆñ ˜TŸX™X {Ó3Ð3r%   r!   N)r?   r@   rA   rB   rC   Ú__annotations__r,   rD   r!   r%   r#   r*   r*   |   s   ‡ Ù<à	ƒK÷4ñ 4r%   r*   c                  óV   a € ] tR t^ˆt$ RtR]R&   R V 3R lltR R ltR R	 ltR
t	V ;t
# )r+   a>  Class responsible for creating dataobj description.

Parameters
----------
obj : DataFrame
    DataFrame to be described.
include : 'all', list-like of dtypes or None
    A white list of data types to include in the result.
exclude : list-like of dtypes or None
    A black list of data types to omit from the result.
r   r   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r   r   r   r   r   r   r    r4   r!   )r"   s   "r#   r$   ÚDataFrameDescriber.__annotate__—   s2   € ÷ ñ àðð ,ð	ð
 ,ðð 
ñr%   c               	ó¬   <€ W n         W0n        VP                  ^8X  d'   VP                  P                  ^ 8X  d   \        R4      h\        SV `  V4       R# )r   z+Cannot describe a DataFrame without columnsN)r   r   r)   ÚcolumnsÚsizeÚ
ValueErrorÚsuperr9   )r8   r   r   r   Ú	__class__s   &&$$€r#   r9   ÚDataFrameDescriber.__init__—   sD   ø€ ð ŒØŒà�8‰8�qŒ=˜SŸ[™[×-Ñ-°Ô2ÜÐJÓKÐKä‰Ñ˜Ör%   c               ó    € V ^8„  d   QhRRRR/# )r   r   r<   r    r   r!   )r"   s   "r#   r$   rO   ¦   s   € ÷ ñ Ð$@ð ÀYñ r%   c                	óX  € V P                  4       p. pVP                  4        F'  w  rE\        V4      pVP                  V! WQ4      4       K)  	  \	        V4      p\        V Uu. uF  qˆP                  V4      NK  	  up^RRR7      p	VP                  P                  4       V	n        V	# u upi )é   TF)ÚaxisÚignore_indexÚsort)	Ú_select_dataÚitemsrI   ÚappendÚreorder_columnsr   ÚreindexrQ   Úcopy)
r8   r   ÚdataÚldescÚ_ÚseriesrJ   Ú	col_namesÚxÚds
   &&        r#   r,   ÚDataFrameDescriber.describe¦   sš   € Ø× Ñ Ó"ˆà ˆØŸ™ž‰IˆAÜ0°Ó8ˆMØ�L‰L™ vÓ;Ö<ñ &ô $ EÓ*ˆ	ÜÙ+0Ó1©5 a�Y‰Y�yÖ!©5Ñ1ØØØô	
ˆð —L‘L×%Ñ%Ó'ˆŒ	Øˆùò 2s   Á"B'c               ó   € V ^8„  d   QhRR/# )r   r    r   r!   )r"   s   "r#   r$   rO   ¸   s   € ÷ ñ ˜iñ r%   c                ó  € V P                   fe   V P                  fW   \        P                  R.pV P                  P                  VR7      p\        VP                  4      ^ 8X  d   V P                  pV# V P                   R8X  d*   V P                  e   Rp\        V4      hV P                  pV# V P                  P                  V P                   V P                  R7      p\        VP                  4      ^ 8X  d   Rp\        V4      hV# )zSelect columns to be described.Údatetime)r   Úallz*exclude must be None when include is 'all')r   r   z<No columns match the specified include or exclude data types)	r   r   ÚnpÚnumberr   Úselect_dtypesÚlenrQ   rS   )r8   Údefault_includerc   Úmsgs   &   r#   r]   ÚDataFrameDescriber._select_data¸   sâ   € à�L‰LÒ  t§|¡|Ò';ä46·I±I¸zÐ3JˆOØ—8‘8×)Ñ)°/Ð)ÓBˆDÜ�4—<‘<Ó  AÔ%Ø—x‘x�ð ˆð �\‰\˜UÔ"Ø�|‰|Ò'ØB�Ü  “oÐ%Ø—8‘8ˆDð ˆð —8‘8×)Ñ)ØŸ™ØŸ™ð *ó ˆDô �4—<‘<Ó  AÔ%ØT�Ü  “oÐ%Øˆr%   )r   r   )r?   r@   rA   rB   rC   rL   r9   r,   r]   rD   Ú__classcell__)rU   s   @r#   r+   r+   ˆ   s(   ø‡ ñ
ð 
ƒN÷ð õ÷$ó r%   r+   c               ó    € V ^8„  d   QhRRRR/# )r   rd   zSequence[Series]r    zlist[Hashable]r!   )r"   s   "r#   r$   r$   Ð   s   € ÷ 
ñ 
Ð+ð 
°ñ 
r%   c                óÆ   € . p\        4       p\        R V  4       \        R7      pV F6  pV F-  pWR9  g   K  VP                  V4       VP	                  V4       K/  	  K8  	  V# )z,Set a convenient order for rows for display.c              3  ó8   "  € T F  qP                   x € K  	  R # 5ir7   )Úindex)Ú.0rh   s   & r#   Ú	<genexpr>Ú"reorder_columns.<locals>.<genexpr>Ô   s   é € Ð3©U¨ŸGžG«Uùs   ‚)Úkey)ÚsetÚsortedrr   Úaddr_   )rd   ÚnamesÚ
seen_namesÚldesc_indexesÚidxnamesÚnames   &     r#   r`   r`   Ð   sY   € à€EÜ #£€JÜÑ3©UÓ3¼Ô=€MÛ!ˆÛˆDØÖ%Ø—‘˜tÔ$Ø—‘˜TÖ"ó ñ "ð
 €Lr%   c               ó$   € V ^8„  d   QhRRRRRR/# )r   rf   r   r   úSequence[float]r    r!   )r"   s   "r#   r$   r$   Ý   s&   € ÷ .Fñ .F ð .F°_ð .FÈñ .Fr%   c                óØ  € ^ RI Hp \        V4      p\        V4      ^ 8X  d   . pMV P	                  V4      P                  4       p. ROVORNpV P                  4       V P                  4       V P                  4       V P                  4       .VOV P                  4       Np\        V P                  \        4      '       dh   \        V P                  \        4      '       d=   V P                  P                  R8X  d   RpM]^ RIp\        VP#                  4       4      pM?\%        4       pM4V P                  P                  R9   d   \&        P                  ! R4      pMRpV! WeV P(                  VR7      # )	z¿Describe series containing numerical data.

Parameters
----------
series : Series
    Series to be described.
percentiles : list-like of numbers
    The percentiles to include in the output.
©r   ÚmaxÚmNÚiufbÚfloat©rz   r†   Údtype)ÚcountÚmeanÚstdÚmin)Úpandasr   r   rr   ÚquantileÚtolistr‘   r’   r“   r”   r‹   Ú
isinstancer�   r   r   ÚkindÚpyarrowÚfloat64r   ro   r†   )	rf   r   r   Úformatted_percentilesÚ	quantilesÚ
stat_indexri   r�   Úpas	   &&       r#   Údescribe_numeric_1dr    Ý   s  € õ ä.¨{Ó;Ðä
ˆ;Ó˜1ÔØ‰	à—O‘O KÓ0×7Ñ7Ó9ˆ	âOÐ2GÐOÈÐO€Jà�‰‹Ø�‰‹Ø�
‰
‹Ø�
‰
‹ð		ð
 
ð	ð 	�
‰
‹ð	€Aô �&—,‘,¤×/Ò/Ü�f—l‘l¤J×/Ò/Ø�|‰|× Ñ  CÔ'à‘ã$ä" 2§:¡:£<Ó0‘ä “N‰EØ	�‰×	Ñ	˜fÔ	$ä—’˜Ó!‰àˆÙ�!¨F¯K©K¸uÔEÐEr%   c               ó$   € V ^8„  d   QhRRRRRR/# )r   rc   r   Úpercentiles_ignoredrˆ   r    r!   )r"   s   "r#   r$   r$     s+   € ÷ Dñ DØ
ðDà(ðDð ñDr%   c                óN  € . ROpV P                  4       p\        W3^ 8g  ,          4      pV^ 8”  d)   VP                  ^ ,          VP                  ^ ,          reRpM!\        P
                  \        P
                  reRpT P                  4       WEV.p^ RIHp	 V	! W‚V P                  VR7      # )zÇDescribe series containing categorical data.

Parameters
----------
data : Series
    Series to be described.
percentiles_ignored : list-like of numbers
    Ignored, but in place to unify interface.
NÚobjectrŠ   r�   )r‘   ÚuniqueÚtopÚfreq)
Úvalue_countsrr   rz   Úilocro   Únanr‘   r•   r   r†   )
rc   r¢   r‚   Ú	objcountsÚcount_uniquer¦   r§   r�   r.   r   s
   &&        r#   Údescribe_categorical_1dr­     sŒ   € ò /€EØ×!Ñ!Ó#€IÜ�y¨a¡Õ0Ó1€LØ�aÔØ—O‘O AÕ&¨	¯©°qÕ(9ˆTØ‰ô —F‘FœBŸF™FˆTØˆà�j‰j‹l˜L¨tÐ4€Fåá�&¨D¯I©I¸UÔCÐCr%   c               ó$   € V ^8„  d   QhRRRRRR/# )r   rc   r   r   rˆ   r    r!   )r"   s   "r#   r$   r$   .  s!   € ÷ 7ñ 7 ð 7°_ð 7Èñ 7r%   c                ó  € ^ RI Hp \        V4      p. ROVORNpV P                  4       V P	                  4       V P                  4       .V P                  V4      P                  4       OV P                  4       NpV! WTV P                  R7      # )z¿Describe series containing datetime64 dtype.

Parameters
----------
data : Series
    Series to be described.
percentiles : list-like of numbers
    The percentiles to include in the output.
rŠ   r‹   )rz   r†   )r‘   r’   r”   )
r•   r   r   r‘   r’   r”   r–   r—   r‹   r†   )rc   r   r   rœ   rž   ri   s   &&    r#   Údescribe_timestamp_1dr°   .  sƒ   € õ ä.¨{Ó;ÐâHÐ+@ÐHÀ%ÐH€Jà�
‰
‹Ø�	‰	‹Ø�‰‹
ð	ð 
�‰�{Ó	#×	*Ñ	*Ó	,ð		ð
 	�‰‹
ð	€Añ �!¨D¯I©IÔ6Ð6r%   c               ó    € V ^8„  d   QhRRRR/# )r   rc   r   r    r   r!   )r"   s   "r#   r$   r$   H  s   € ÷ 'ñ 'Ø
ð'àñ'r%   c                óB  € \        V P                  4      '       d   \        # \        V 4      '       d   \        # V P                  P
                  R8X  g!   \        V P                  \        4      '       d   \        # V P                  P
                  R8X  d   \        # \        # )z‚Select proper function for describing series based on data type.

Parameters
----------
data : Series
    Series to be described.
ÚMrŒ   )	r   r�   r­   r   r    r™   r˜   r   r°   )rc   s   &r#   rI   rI   H  sl   € ô �T—Z‘Z× Ò Ü&Ð&Ü	˜$×	Ò	Ü"Ð"Ø	�‰�‰˜CÔ	¤:¨d¯j©j¼/×#JÒ#JÜ$Ð$Ø	�‰�‰˜CÔ	Ü"Ð"ä&Ð&r%   c               ó    € V ^8„  d   QhRRRR/# )r   r   r   r    znpt.NDArray[np.float64]r!   )r"   s   "r#   r$   r$   ^  s   € ÷ ñ Ø4ðàñr%   c                ó   € V f   \         P                  ! . RO4      # \         P                  ! V 4      p \        V 4       \         P                  ! V 4      pV f   Q h\        V4      \        V 4      8  d   \        R4      hV# )z¢
Ensure that percentiles are unique and sorted.

Parameters
----------
percentiles : list-like of numbers, optional
    The percentiles to include in the output.
z%percentiles cannot contain duplicates)g      Ð?g      à?g      è?)ro   ÚarrayÚasarrayr
   r¥   rr   rS   )r   Úunique_pctss   & r#   r(   r(   ^  sr   € ð ÒÜ�xŠxÒ)Ó*Ð*ä—*’*˜[Ó)€Kô ˜Ô$ô —)’)˜KÓ(€KØÒ"Ð"Ð"Ü
ˆ;Óœ#˜kÓ*Ô*ÜÐ@ÓAÐAàÐr%   )/rC   Ú
__future__r   Úabcr   r   Útypingr   r   Únumpyro   Úpandas._typingr   r   r	   Úpandas.util._validatorsr
   Úpandas.core.dtypes.commonr   r   Úpandas.core.dtypes.dtypesr   r   r   Úpandas.core.arrays.floatingr   Úpandas.core.reshape.concatr   Úpandas.io.formats.formatr   Úcollections.abcr   r   r   r•   r   r   r/   r1   r*   r+   r`   r    r­   r°   rI   r(   r!   r%   r#   Ú<module>rÅ      sª   ðñõ #÷÷ó
 ÷ñ õ
 8÷÷ñ õ 5Ý -å 7ç÷ñ ÷õ+"ô\˜sô ô.	4Ð.ô 	4ôEÐ1ô EõP
õ.FõbDõ@7õ4'÷,r%   