U
    yagd  ã                   @   s@   d Z zddlmZ W n ek
r,   dZY nX G dd„ dƒZdS )z Tablib - DataFrame Support.
é    )Ú	DataFrameNc                   @   s:   e Zd ZdZdZedd„ ƒZed
dd„ƒZedd	„ ƒZdS )ÚDataFrameFormatÚdf)r   c                 C   sH   t dkrdS t|t ƒrdS zt | ¡ ƒ W dS  tk
rB   Y dS X dS )z,Returns True if given stream is a DataFrame.NFT)r   Ú
isinstanceÚreadÚ
ValueError)ÚclsÚstream© r
   úF/var/www/html/myvenv/lib/python3.8/site-packages/tablib/formats/_df.pyÚdetect   s    
zDataFrameFormat.detectNc                 C   s$   t dkrtdƒ‚t |j|jd�}|S )z-Returns DataFrame representation of DataBook.NzWDataFrame Format requires `pandas` to be installed. Try `pip install "tablib[pandas]"`.)Úcolumns)r   ÚNotImplementedErrorÚdictÚheaders)r   ÚdsetÚindexZ	dataframer
   r
   r   Ú
export_set   s    ÿzDataFrameFormat.export_setc                 C   s   |  ¡  |jdd�|_dS )zReturns dataset from DataFrame.Úrecords)ZorientN)ZwipeÚto_dictr   )r   r   Z	in_streamr
   r
   r   Ú
import_set%   s    zDataFrameFormat.import_set)N)	Ú__name__Ú
__module__Ú__qualname__ÚtitleÚ
extensionsÚclassmethodr   r   r   r
   r
   r
   r   r   
   s   
	r   )Ú__doc__Zpandasr   ÚImportErrorr   r
   r
   r
   r   Ú<module>   s
   
