ó
    Ñ]j�  ã                  óÀ  • % S SK Jr  S SKJrJrJr  S SKrS SKJ	r	  S SK
Jr  S SKJr  S SKJrJr  \(       a  S SKJr   " S	 S
\5      r\	" S5       " S S\5      5       rSr\\	" S5       " S S\5      5       5       r\\	" S5       " S S\5      5       5       r\R0                  " \R2                  5      \" 5       \R0                  " \R4                  5      \" 5       0rS\S'   g)é    )Úannotations)ÚTYPE_CHECKINGÚAnyÚClassVarN)Ú
set_module)Úregister_extension_dtype)Úis_float_dtype)ÚNumericArrayÚNumericDtype)ÚCallablec                  óª   • \ rS rSr% Sr\R                  r\R                  " \R                  5      r
\rS\S'   S
S jr\SS j5       r\SS j5       rSrg	)ÚFloatingDtypeé   a
  
An ExtensionDtype to hold a single size of floating dtype.

These specific implementations are subclasses of the non-public
FloatingDtype. For example we have Float32Dtype to represent float32.

The attributes name & type are set when these subclasses are created.
zCallable[[Any], bool]Ú_checkerc                ó   • [         $ )zI
Return the array type associated with this dtype.

Returns
-------
type
)ÚFloatingArray)Úselfs    ÚX/home/mande/repo/quber/.venv/lib/python3.13/site-packages/pandas/core/arrays/floating.pyÚconstruct_array_typeÚ"FloatingDtype.construct_array_type(   s
   € ô Ðó    c                ó   • [         $ )N)ÚNUMPY_FLOAT_TO_DTYPE)Úclss    r   Ú_get_dtype_mappingÚ FloatingDtype._get_dtype_mapping2   s   € ä#Ð#r   c                ó    • UR                  X#S9$ )zc
Safely cast the values to the given dtype.

"safe" in this context means the casting is lossless.
)Úcopy)Úastype)r   ÚvaluesÚdtyper   s       r   Ú
_safe_castÚFloatingDtype._safe_cast6   s   € ð �}‰}˜Uˆ}Ð.Ð.r   © N)Úreturnztype[FloatingArray])r%   údict[np.dtype, FloatingDtype])r    ú
np.ndarrayr!   znp.dtyper   Úboolr%   r'   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__ÚnpÚnanÚ_internal_fill_valuer!   Úfloat64Ú_default_np_dtyper	   r   Ú__annotations__r   Úclassmethodr   r"   Ú__static_attributes__r$   r   r   r   r      s^   ‡ ñð Ÿ6™6ÐØŸš §¡Ó,ÐØ&4€HÐ#Ó4ôð ó$ó ð$ð ó/ó ó/r   r   zpandas.arraysc                  ó   • \ rS rSrSr\rSrg)r   éB   a*  
Array of floating (optional missing) values.

.. warning::

   FloatingArray is currently experimental, and its API or internal
   implementation may change without warning. Especially the behaviour
   regarding NaN (distinct from NA missing values) is subject to change.

We represent a FloatingArray with 2 numpy arrays:

- data: contains a numpy float array of the appropriate dtype
- mask: a boolean array holding a mask on the data, True is missing

To construct a FloatingArray from generic array-like input, use
:func:`pandas.array` with one of the float dtypes (see examples).

See :ref:`integer_na` for more.

Parameters
----------
values : numpy.ndarray
    A 1-d float-dtype array.
mask : numpy.ndarray
    A 1-d boolean-dtype array indicating missing values.
copy : bool, default False
    Whether to copy the `values` and `mask`.

Attributes
----------
None

Methods
-------
None

Returns
-------
FloatingArray

See Also
--------
array : Create an array.
Float32Dtype : Float32 dtype for FloatingArray.
Float64Dtype : Float64 dtype for FloatingArray.
Series : One-dimensional labeled array capable of holding data.
DataFrame : Two-dimensional, size-mutable, potentially heterogeneous tabular data.

Examples
--------
Create a FloatingArray with :func:`pandas.array`:

>>> pd.array([0.1, None, 0.3], dtype=pd.Float32Dtype())
<FloatingArray>
[0.1, <NA>, 0.3]
Length: 3, dtype: Float32

String aliases for the dtypes are also available. They are capitalized.

>>> pd.array([0.1, None, 0.3], dtype="Float32")
<FloatingArray>
[0.1, <NA>, 0.3]
Length: 3, dtype: Float32
r$   N)r)   r*   r+   r,   r-   r   Ú
_dtype_clsr5   r$   r   r   r   r   B   s   † ñ?ðB ƒJr   r   a`  
An ExtensionDtype for {dtype} data.

This dtype uses ``pd.NA`` as missing value indicator.

Attributes
----------
None

Methods
-------
None

See Also
--------
CategoricalDtype : Type for categorical data with the categories and orderedness.
IntegerDtype : An ExtensionDtype to hold a single size & kind of integer dtype.
StringDtype : An ExtensionDtype for string data.

Examples
--------
For Float32Dtype:

>>> ser = pd.Series([2.25, pd.NA], dtype=pd.Float32Dtype())
>>> ser.dtype
Float32Dtype()

For Float64Dtype:

>>> ser = pd.Series([2.25, pd.NA], dtype=pd.Float64Dtype())
>>> ser.dtype
Float64Dtype()
Úpandasc                  óZ   • \ rS rSr% \R
                  rSrS\S'   \	R                  SS9rSrg)	ÚFloat32Dtypeé­   ÚFloat32úClassVar[str]ÚnameÚfloat32©r!   r$   N)r)   r*   r+   r,   r.   r@   Útyper?   r3   Ú_dtype_docstringÚformatr-   r5   r$   r   r   r;   r;   ­   ó*   ‡ ð �:‰:€DØ#€Dˆ-Ó#Ø×%Ñ%¨IÐ%Ð6ƒGr   r;   c                  óZ   • \ rS rSr% \R
                  rSrS\S'   \	R                  SS9rSrg)	ÚFloat64Dtypeéµ   ÚFloat64r>   r?   r1   rA   r$   N)r)   r*   r+   r,   r.   r1   rB   r?   r3   rC   rD   r-   r5   r$   r   r   rG   rG   µ   rE   r   rG   r&   r   )Ú
__future__r   Útypingr   r   r   Únumpyr.   Úpandas.util._decoratorsr   Úpandas.core.dtypes.baser   Úpandas.core.dtypes.commonr	   Úpandas.core.arrays.numericr
   r   Úcollections.abcr   r   r   rC   r;   rG   r!   r@   r1   r   r3   r$   r   r   Ú<module>rR      sñ   ðÞ "÷ñ ó å .å <Ý 4÷ö
 Ý(ô&/�Lô &/ñR ˆOÓôB�Ló Bó ðBðJ Ð ðJ ÙˆHÓô7�=ó 7ó ó ð7ð ÙˆHÓô7�=ó 7ó ó ð7ð ‡H‚HˆR�Z‰ZÓ™,›.Ø‡H‚HˆR�Z‰ZÓ™,›.ð7Ð Ð3ô r   