
    A>i                    J   S r SSKJr  SSK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  SS	KJr  SS
KJr  SSKJr  SSKJr  SSKJr  \(       a  SSKJrJr  SSKJrJrJrJ r J!r!   S         SS jjr"\" S5      SSS\
RF                  4           SS jj5       r$g)zfeather-format compat    )annotations)TYPE_CHECKINGAnyN)using_string_dtype)lib)import_optional_dependency)Pandas4Warning)
set_module)check_dtype_backend)	DataFrame)arrow_table_to_pandas)
get_handle)HashableSequence)DtypeBackendFilePath
ReadBufferStorageOptionsWriteBufferc                    [        S5        SSKJn  [        U [        5      (       d  [        S5      e[        USUSS9 nUR                  " XR                  40 UD6  SSS5        g! , (       d  f       g= f)	a0  
Write a DataFrame to the binary Feather format.

Parameters
----------
df : DataFrame
path : str, path object, or file-like object
storage_options : dict, optional
    Extra options that make sense for a particular storage connection, e.g.
    host, port, username, password, etc. For HTTP(S) URLs the key-value pairs
    are forwarded to ``urllib.request.Request`` as header options. For other
    URLs (e.g. starting with "s3://", and "gcs://") the key-value pairs are
    forwarded to ``fsspec.open``. Please see ``fsspec`` and ``urllib`` for more
    details, and for more examples on storage options refer `here
    <https://pandas.pydata.org/docs/user_guide/io.html?
    highlight=storage_options#reading-writing-remote-files>`_.
**kwargs :
    Additional keywords passed to `pyarrow.feather.write_feather`.

pyarrowr   featherz'feather only support IO with DataFrameswbFstorage_optionsis_textN)	r   r   r   
isinstancer   
ValueErrorr   write_featherhandle)dfpathr   kwargsr   handless         W/var/www/html/land-tabula/venv/lib/python3.13/site-packages/pandas/io/feather_format.py
to_featherr'   '   sc    4 y)b)$$BCC	dOU
	b..;F;
 
 
s   A%%
A3pandasTc           	         [        S5        SSKJn  SSKn[	        U5        [        U SUSS9 nU[        R                  L aw  [        5       (       dh  [        R                  " 5          [        R                  " SS	[        5        UR                  UR                  U[        U5      S
9sSSS5        sSSS5        $ UR!                  UR                  U[        U5      S
9n[#        XS9sSSS5        $ ! , (       d  f       ND= f! , (       d  f       g= f)a>
  
Load a feather-format object from the file path.

Feather is particularly useful for scenarios that require efficient
serialization and deserialization of tabular data. It supports
schema preservation, making it a reliable choice for use cases
such as sharing data between Python and R, or persisting intermediate
results during data processing pipelines. This method provides additional
flexibility with options for selective column reading, thread parallelism,
and choosing the backend for data types.

Parameters
----------
path : str, path object, or file-like object
    String, path object (implementing ``os.PathLike[str]``), or file-like
    object implementing a binary ``read()`` function. The string could be a URL.
    Valid URL schemes include http, ftp, s3, gs and file. For file URLs, a host is
    expected. A local file could be: ``file://localhost/path/to/table.feather``.
columns : sequence, default None
    If not provided, all columns are read.
use_threads : bool, default True
    Whether to parallelize reading using multiple threads.
storage_options : dict, optional
    Extra options that make sense for a particular storage connection, e.g.
    host, port, username, password, etc. For HTTP(S) URLs the key-value pairs
    are forwarded to ``urllib.request.Request`` as header options. For other
    URLs (e.g. starting with "s3://", and "gcs://") the key-value pairs are
    forwarded to ``fsspec.open``. Please see ``fsspec`` and ``urllib`` for more
    details, and for more examples on storage options refer `here
    <https://pandas.pydata.org/docs/user_guide/io.html?
    highlight=storage_options#reading-writing-remote-files>`_.

dtype_backend : {{'numpy_nullable', 'pyarrow'}}
    Back-end data type applied to the resultant :class:`DataFrame`
    (still experimental). If not specified, the default behavior
    is to not use nullable data types. If specified, the behavior
    is as follows:

    * ``"numpy_nullable"``: returns nullable-dtype-backed :class:`DataFrame`.
    * ``"pyarrow"``: returns pyarrow-backed nullable
      :class:`ArrowDtype` :class:`DataFrame`

    .. versionadded:: 2.0

Returns
-------
type of object stored in file
    DataFrame object stored in the file.

See Also
--------
read_csv : Read a comma-separated values (csv) file into a pandas DataFrame.
read_excel : Read an Excel file into a pandas DataFrame.
read_spss : Read an SPSS file into a pandas DataFrame.
read_orc : Load an ORC object into a pandas DataFrame.
read_sas : Read SAS file into a pandas DataFrame.

Examples
--------
>>> df = pd.read_feather("path/to/file.feather")  # doctest: +SKIP
r   r   r   NrbFr   ignorezmake_block is deprecated)columnsuse_threads)dtype_backend)r   r   r   (pandas.core.arrays.arrow.extension_typesr   r   r   
no_defaultr   warningscatch_warningsfilterwarningsr	   read_featherr!   bool
read_tabler   )	r#   r,   r-   r   r.   r   r(   r%   pa_tables	            r&   r4   r4   M   s    J y) 4&	dOU
	CNN*3E3G3G((*''." ++NNGkAR ,  +*	
 
 %%NNGk9J & 
 %XK%
 
 +*	
 
s*   8C?%A C.%	C?8,C?.
C<	8C??
D)N)
r"   r   r#   zFilePath | WriteBuffer[bytes]r   StorageOptions | Noner$   r   returnNone)r#   zFilePath | ReadBuffer[bytes]r,   zSequence[Hashable] | Noner-   r5   r   r8   r.   zDtypeBackend | lib.NoDefaultr9   r   )%__doc__
__future__r   typingr   r   r1   pandas._configr   pandas._libsr   pandas.compat._optionalr   pandas.errorsr	   pandas.util._decoratorsr
   pandas.util._validatorsr   pandas.core.apir   pandas.io._utilr   pandas.io.commonr   collections.abcr   r   pandas._typingr   r   r   r   r   r'   r0   r4        r&   <module>rK      s     "  -  > ( . 7 % 1 '
  .2#<#<
'#< +#< 	#<
 
#<L H *.-125..^L
&^L&^L ^L +	^L
 0^L ^L ^LrJ   