o
    õ­d=/  ã                   @   s  d dl Zd dlZd dlmZmZmZmZ d dlm	Z
 d dlmZ dd„ Zdd„ Zdd	„ Zd
d„ Zdd„ Zdd„ Zdd„ Zej dg d¢¡dd„ ƒZej ddd„ dd„ g¡dd„ ƒZdd„ Zej ddd„ d fd!d„ d"fg¡d#d$„ ƒZej dg d¢¡d%d&„ ƒZdS )'é    N)Ú	DataFrameÚSeriesÚconcatÚmerge)Ú	get_arrayc                 C   s2  t ddgd iƒ}t ddgd iƒ}| ¡ }t||gdd}| r=t t|dƒt|dƒ¡s.J ‚t t|dƒt|dƒ¡s<J ‚nt t|dƒt|dƒ¡rKJ ‚t t|dƒt|dƒ¡rYJ ‚d|jd< | r|t t|dƒt|dƒ¡rnJ ‚t t|dƒt|dƒ¡s|J ‚d|jd< | r‘t t|dƒt|dƒ¡r‘J ‚t ||¡ d S )	NÚbÚaé   é   ©ÚaxisÚd©r   r   ©r   r
   )	r   Úcopyr   ÚnpÚshares_memoryr   ÚilocÚtmÚassert_frame_equal)Úusing_copy_on_writeÚdfÚdf2Údf_origÚresult© r   új/var/www/html/visualizacion-main/env/lib/python3.10/site-packages/pandas/tests/copy_view/test_functions.pyÚtest_concat_frames   s"   

r   c                 C   s2  t ddgd iƒ}t ddgd iƒ}t||gdd}| r9t t|dƒt|dƒ¡s*J ‚t t|dƒt|dƒ¡s8J ‚nt t|dƒt|dƒ¡rGJ ‚t t|dƒt|dƒ¡rUJ ‚| ¡ }d|jd< | r|t t|dƒt|dƒ¡rnJ ‚t t|dƒt|dƒ¡s|J ‚d|jd< | r‘t t|dƒt|dƒ¡r‘J ‚t ||¡ d S )Nr   r   r	   r
   r   r   r   )	r   r   r   r   r   r   r   r   r   )r   r   r   r   Úexpectedr   r   r   Ú!test_concat_frames_updating_input&   s"   

r   c                 C   s&  t ddgdd}t ddgdd}| ¡ }| ¡ }t||gdd}| r;t t|dƒ|j¡s.J ‚t t|dƒ|j¡s:J ‚nt t|dƒ|j¡rGJ ‚t t|dƒ|j¡rSJ ‚d	|jd
< | rrt t|dƒ|j¡rfJ ‚t t|dƒ|j¡srJ ‚d|jd< | r…t t|dƒ|j¡r…J ‚t 	||¡ t 	||¡ d S )Nr
   é   r   ©Únamer	   é   r   r   éd   r   éè  r   )
r   r   r   r   r   r   Úvaluesr   r   Úassert_series_equal)r   ÚserÚser2Úser_origÚ	ser2_origr   r   r   r   Útest_concat_series>   s&   

r,   c                 C   sB  t g d¢g d¢dœƒ}t dg d¢iƒ}t dg d¢iƒ}tt||gdd|gdd}| ¡ }| rZt t|d	ƒt|d	ƒ¡s=J ‚t t|dƒt|dƒ¡sKJ ‚t t|dƒt|dƒ¡sYJ ‚n*t t|d	ƒt|d	ƒ¡rhJ ‚t t|dƒt|dƒ¡rvJ ‚t t|dƒt|dƒ¡r„J ‚d
|jd< | r™t t|d	ƒt|d	ƒ¡r™J ‚t ||¡ d S )N©r
   r    r	   )gš™™™™™¹?gš™™™™™É?g333333Ó?©r   r   Úc©r#   é   é   r   r
   r   r   r$   r   )	r   r   r   r   r   r   r   r   r   )r   Údf1r   Údf3r   r   r   r   r   Útest_concat_frames_chainedX   s    
r5   c                 C   s<  t g d¢dd}t g d¢dd}t g d¢dd}tt||gdd|gdd}| ¡ }| rWt t|dƒt|dƒ¡s:J ‚t t|dƒt|dƒ¡sHJ ‚t t|dƒt|dƒ¡sVJ ‚n*t t|dƒt|dƒ¡reJ ‚t t|dƒt|dƒ¡rsJ ‚t t|dƒt|dƒ¡rJ ‚d	|jd
< | r–t t|dƒt|dƒ¡r–J ‚t ||¡ d S )Nr-   r   r!   r0   r/   r   r
   r   r$   r   )	r   r   r   r   r   r   r   r   r   )r   Úser1r)   Úser3r   r   r   r   r   Útest_concat_series_chainedo   s    
r8   c                 C   sH  t ddgdd}t ddgdd}tddgddgdœƒ}t||gdd	}| rBt t|dƒt|dƒ¡s3J ‚t t|dƒt|dƒ¡sAJ ‚nt t|dƒt|dƒ¡rPJ ‚t t|dƒt|dƒ¡r^J ‚d
|jd< | rt t|dƒt|dƒ¡rsJ ‚t t|dƒt|dƒ¡sJ ‚t ||¡ d|jd< | rœt t|dƒt|dƒ¡rœJ ‚t ||¡ d S )Nr
   r    r   r!   r	   r#   r   r.   r   r$   r   r%   )	r   r   r   r   r   r   r   r   r   )r   r(   r)   r   r   r   r   r   Ú!test_concat_series_updating_input†   s$   

r9   c                 C   sL  t g d¢ddœƒ}tg d¢dd}t||gdd}| ¡ }| rJt t|dƒt|dƒ¡s-J ‚t t|d	ƒt|d	ƒ¡s;J ‚t t|dƒt|dƒ¡sIJ ‚n*t t|dƒt|dƒ¡rXJ ‚t t|d	ƒt|d	ƒ¡rfJ ‚t t|dƒt|dƒ¡rtJ ‚d
|jd< | r‰t t|dƒt|dƒ¡r‰J ‚d
|jd< | ržt t|dƒt|dƒ¡ržJ ‚t 	||¡ d S )Nr-   r
   )r   r/   r0   r   r!   r   r   r/   r$   r   r   )
r   r   r   r   r   r   r   r   r   r   )r   r   r(   r   r   r   r   r   Útest_concat_mixed_series_frameŸ   s$   

r:   r   )TNFc                 C   s¶   t dddgiƒ}t dddgiƒ}t||gd|d}| s|du r=t t|dƒt|dƒ¡s-J ‚t t|dƒt|dƒ¡s;J ‚d S t t|dƒt|dƒ¡rKJ ‚t t|dƒt|dƒ¡rYJ ‚d S )	Nr   r
   r    r   g      ø?g      @)r   r   F)r   r   r   r   r   ©r   r   r   r   r   r   r   r   Útest_concat_copy_keyword¸   ó     r<   Úfuncc                 K   s   | j |fi |¤ŽS ©N©r   ©r3   r   Úkwargsr   r   r   Ú<lambda>Ê   ó    rC   c                 K   s   t | |fi |¤ŽS r?   r@   rA   r   r   r   rC   Ë   rD   c                 C   s„  t g d¢g d¢dœƒ}t g d¢g d¢dœƒ}| ¡ }| ¡ }|||dd}| r`t t|dƒt|dƒ¡s5J ‚t t|d	ƒt|d	ƒ¡sCJ ‚t t|dƒt|dƒ¡sQJ ‚t t|dƒt|dƒ¡r_J ‚nt t|dƒt|dƒ¡rnJ ‚t t|d	ƒt|d	ƒ¡r|J ‚d
|jd< | rŸt t|dƒt|dƒ¡r‘J ‚t t|d	ƒt|d	ƒ¡sŸJ ‚d
|jd< | r´t t|d	ƒt|d	ƒ¡r´J ‚t ||¡ t ||¡ d S )N©r   r   r/   r-   ©Úkeyr   r0   ©rG   r   rG   )Úonr   r   r   r   ©r   r    )r   r   r   r   r   r   r   r   )r   r>   r3   r   Údf1_origÚdf2_origr   r   r   r   Útest_merge_on_keyÇ   s*   

rM   c                 C   sB  t dg d¢iƒ}t dg d¢iƒ}| ¡ }| ¡ }t||ddd}| r?t t|dƒt|dƒ¡s0J ‚t t|dƒt|dƒ¡s>J ‚nt t|dƒt|dƒ¡rMJ ‚t t|dƒt|dƒ¡r[J ‚d|jd< | r~t t|dƒt|dƒ¡rpJ ‚t t|dƒt|dƒ¡s~J ‚d|jd	< | r“t t|dƒt|dƒ¡r“J ‚t ||¡ t ||¡ d S )
Nr   r-   r   r0   T)Ú
left_indexÚright_indexr   r   r   )	r   r   r   r   r   r   r   r   r   )r   r3   r   rK   rL   r   r   r   r   Útest_merge_on_indexë   s&   

rP   z	func, howc                 K   s   t || fddi|¤ŽS ©NrI   rG   r@   rA   r   r   r   rC   	  ó    Úrightc                 K   s   t | |fddi|¤ŽS rQ   r@   rA   r   r   r   rC   
  rR   Úleftc                 C   sz  t g d¢g d¢dœƒ}t ddgddgdœƒ}| ¡ }| ¡ }||||d	}| rtt t|dƒt|dƒ¡s5J ‚t t|dƒt|dƒ¡rCJ ‚|j d
¡sKJ ‚|j d¡sSJ ‚t t|dƒt|dƒ¡|dku seJ ‚t t|dƒt|dƒ¡rsJ ‚nt t|dƒt|dƒ¡r‚J ‚t t|dƒt|dƒ¡rJ ‚|dkršd|jd< nd|jd< | r¯t t|dƒt|dƒ¡r¯J ‚t 	||¡ t 	||¡ d S )NrE   r-   rF   r   r   r#   r1   rH   )Úhowr
   r   rG   rT   r   rJ   )
r   r   r   r   r   Ú_mgrÚ_has_no_referencer   r   r   )r   r>   rU   r3   r   rK   rL   r   r   r   r   Útest_merge_on_key_enlarging_one  s.   ÿ
rX   c                 C   s¶   t dddgiƒ}t dddgiƒ}|j||ddd}| s|d	u r=t t|dƒt|dƒ¡s-J ‚t t|dƒt|dƒ¡s;J ‚d S t t|dƒt|dƒ¡rKJ ‚t t|dƒt|dƒ¡rYJ ‚d S )
Nr   r
   r    r   r	   g      @T)r   rN   rO   F)r   r   r   r   r   r;   r   r   r   Útest_merge_copy_keyword,  r=   rY   )Únumpyr   ÚpytestÚpandasr   r   r   r   Úpandas._testingÚ_testingr   Úpandas.tests.copy_view.utilr   r   r   r,   r5   r8   r9   r:   ÚmarkÚparametrizer<   rM   rP   rX   rY   r   r   r   r   Ú<module>   s>    
þþ


þþ
