
    Pi                     
   d dl Zd dlZd dlZd dlmZmZ d dlmZ	 ej
                            dddg          d             Zej
                            dddg          d             Zej
                            dddg          ej
                            d	d
dg          d                         Zej
                            ddej        fdg          ej
                            dg d          d                         Zd ZdS )    N)	DataFrameIndexfuncffillbfillc                 L   t          g ddt          j        t          j        gg dgt          g dd                    }|                    dg          d	d
g         } t          ||                       j        }t          d	d
gd          }t          j        ||           d S )N)         ?g      r	   )r	   g       @g       )typeabidxnamecolumnsr   r   r   )	r   npnanr   groupbygetattrr   tmassert_index_equal)r   df
df_groupedresultexpecteds        u/home/jaya/work/projects/VOICE-AGENT/VIET/agent-env/lib/python3.11/site-packages/pandas/tests/groupby/test_missing.py.test_groupby_column_index_name_lost_fill_funcsr      s     
	!RVRV,nnn=(((u555
 
 
B VH%%sCj1J&WZ&&((0Fc3Ze,,,H&(+++++    c                 n   t          g dg dd          }t          ddt          j        dgi          }t          j        ||gd                              dg          }t          dd	gd
t          j        gddggddg          } t          ||                       }t          j        ||           d S )N)r	         )field1field2r#   r	   r"   )axisr$   )byr
   r!   g      @r   )	r   r   r   pdconcatr   r   r   assert_frame_equal)r   df1df2r   r   r   s         r   (test_groupby_fill_duplicate_column_namesr,      s     yyyIII>>
?
?C
X261~.
/
/CC:A...668*6EEJ
SArv;C)Hh3G  H 'WZ&&((F&(+++++r   methodhas_nan_groupTFc           	      r   t          ddg          }g d}|                    |                              d          }|rt          j        nd}t          j        dgdz  |gdz  z             |d	<   |                    d	| 
          } t          ||          d           }g dg dg dg dg dg dg dg dd}	|		                    || |f          }|                    |                              d          }
|
j
                            t                    |
_
        t          j        ||
           d S )N)r	   g?)   g?)r   r1   r1   r	   r1   T)dropr   r   r!   	group_col)r&   dropna)limit)r1   r   r   r1   r1   r1   )r1   r   r   r1   r	   r	   )r   r   r1   r1   r1   r1   )r   r   r1   r	   r	   r1   ))r   TT)r   TF)r   FT)r   FF)r   TT)r   TF)r   FT)r   FF)r   reindexreset_indexr   r   r'   Seriesr   r   getr   astypeobjectr   r)   )r4   r-   r.   df_without_nan_rowsridxr   group_bgroupedr   expected_rowsr   s              r   test_ffill_handles_nan_groupsrA   &   ss   
 $Xx$899!!!D		$	$T	*	*	6	6D	6	A	AB%.bff3Gi	WIM 9::B{OjjKj77G%WWf%%D111F  655 4 4 4 4 4 4!5!5!5555 4 4 4 4 4 4!5!5!5	 	M ffm<==D"**400<<$<GGH'..v66H&(+++++r   zmin_count, valuer0   )r1   r
   )firstlastmaxminc                 b   t          dgdz  dt          j        t          j        gt          j        gdz  d          } t          |                    d          |           |          }t          |gt          j        gdt          dgd                    }t          j        ||           d S )	Nr	   r!   r   r   cr   )	min_count)r   rH   r   )index)r   r   r   r   r   r   r   r)   )r   rI   valuer   r   r   s         r   test_min_countrL   I   s     
!q2626':"&ANN	O	OB+WRZZ__d++i@@@FwbfX66eQCc>R>R>RSSSH&(+++++r   c                      t          ddt          j        gg dg dd          } |                     ddg          }|j        }t          j        dg          t          j        dg          d}||k    sJ d S )	Nr	   )r0   r!   r"   )         rG   r   r   r   ))r
   r0   )r
   r!   )r   r   r   r   indicesarray)r   gr   r   s       r   test_indices_with_missingrT   S   s}    	!QiiiiiiHH	I	IB


C:AYF(A3--28QC==AAHXr   )numpyr   pytestpandasr'   r   r   pandas._testing_testingr   markparametrizer   r,   rA   r   rL   rT    r   r   <module>r]      s                         '7!344	, 	, 54	, '7!344	, 	, 54	, GW#5664-88, , 98 76,B +q"&k9-EFF!@!@!@AA, , BA GF,    r   