
    bMhU                        d dl mZ d dlmZ d dlZd dlZd dlZd dlm	Z	 d dl
mZmZ d dlmZmZmZmZmZ d Zd Zej                            d	d
dg          d             Zd Zd Zd Zej                            ed          d             Zej                            e d          d             Zej                            dg ddf e ed          d           e	            oe f e ed          e          d
f ej          e!d           e!d          g          df ej          e!d          ddgg           e	            oe fg          d             Z"d Z#dS )    )StringIO)ascii_uppercaseN)using_string_dtype)HAS_PYARROWPYPY)CategoricalIndexIndex
MultiIndexSeries
date_rangec                     d} t          j        t          d                                        t           j                            d                              dd| t                              }t          |          	                    d          }|
                                 t                      }|                    |           ||d	k             }t                      }|                    |           d S )
Ni	  
abcdefghij   r   
   )sizedtypecategorybufd)nparraylisttakerandomdefault_rngintegersintr   astypeisnar   info)ndatasr   s2s        e/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pandas/tests/series/methods/test_info.py'test_info_categorical_column_just_worksr'      s    A8D&&'',,
	a  ))!Ras)CC D 	tJ''AFFHHH
**CFFsFOOO	
18B
**CGGG    c                      t          ddg          } t          t          j        d          |           }t	                      }|                    |           d S )Nabr   indexr   )r   r   r   zerosr   r!   )idxr$   r   s      r&   test_info_categoricalr0   '   sK    
C:
&
&Crx{{#&&&A
**CFFsFOOOOOr(   verboseTFc                    | }t          t          t          |                    |d          }t                      }|                    ||           |                                }t          j        d          }|r|t          j        d          z  }|r	t          rdnd}|t          j        d|	                                 d	| d
          z  }||k    sJ d S )Nsth)r-   name)r1   r   zw        <class 'pandas.core.series.Series'>
        MultiIndex: 10 entries, ('foo', 'one') to ('qux', 'three')
        z            Series name: sth
            Non-Null Count  Dtype
            --------------  -----
            10 non-null     int64
             +z/        dtypes: int64(1)
        memory usage: z.0z bytes
        )
r   rangelenr   r!   getvaluetextwrapdedentr   memory_usage)	%lexsorted_two_level_string_multiindexr1   using_infer_stringr-   serr   resultexpected	qualifiers	            r&   test_info_seriesrC   /   s
    2E
s5zz""%e
<
<
<C
**CHHW#H&&&\\^^F	 H  
HO
 
 	
 )A[AcI	''))	 	-6	 	 	  H Xr(   c                     t          ddgd          } t                      }|                     |           |                                }t	          |                                           }t          j        d| d          }||k    sJ d S )N   r   i8r   r   z    <class 'pandas.core.series.Series'>
    RangeIndex: 2 entries, 0 to 1
    Series name: None
    Non-Null Count  Dtype
    --------------  -----
    2 non-null      int64
    dtypes: int64(1)
    memory usage: z bytes
    )r   r   r!   r9   floatr<   r:   r;   )r$   r   r@   memory_bytesrA   s        r&   test_info_memoryrJ   R   s    1vT"""A
**CFFsFOOO\\^^F))**L		  		 		 		 H Xr(   c                     t          t          j                            d                              d                    } d}t          j        t          |          5  |                     d           d d d            d S # 1 swxY w Y   d S )Nr   e   zIArgument `max_cols` can only be passed in DataFrame.info, not Series.info)matchrE   )max_cols)	r   r   r   r   standard_normalpytestraises
ValueErrorr!   )r$   msgs     r&   test_info_widerT   g   s    ry$$Q''77<<==A
UC	z	-	-	-  	                 s   BBBc                  P   g d} d}| D ]}t          t          j                            d                              d|                              |                    }t                      }|                    |           |                                }|dd| }||v sJ d S )N)int64float64zdatetime64[ns]ztimedelta64[ns]
complex128objectboolr   r   )r   r   r   z non-null     )	r   r   r   r   r   r   r   r!   r9   )dtypesr"   r   r$   r   resr4   s          r&   test_info_shows_dtypesr]   n   s      F 	A  29((++44QQ4??FFuMMNNjj	3llnn,,,U,,s{{{{{ r(   z'on PyPy deep=True doesn't change result)reasonc                     t          ddgidg          } |                     dd          |                     d          k    sJ t          ddgi          }|                    d          |                                k    sJ d S Nr*   rE   foor,   T)r-   deeprb   r   r<   s_with_object_indexs_objects     r&   $test_info_memory_usage_deep_not_pypyrh      s     #sE7;;;++ ,  ((t(445 5 5 5 sSEl##H  d ++h.C.C.E.EEEEEEEr(   z(on PyPy deep=True does not change resultc                     t          ddgidg          } |                     dd          |                     d          k    sJ t          ddgi          }|                    d          |                                k    sJ d S r`   rd   re   s     r&    test_info_memory_usage_deep_pypyrj      s     #sE7;;;++ ,  		)	)	)	5	56 6 6 6 sSEl##H  d ++x/D/D/F/FFFFFFFr(   zindex, plus)rE   r      ABCstrrG   rk   ra   barc                     t          d|           }t                      }|                    |           |rd|                                v sJ d S d|                                vsJ d S )NrE   r,   r   r6   )r   r   r!   r9   )r-   plusseriesr   s       r&    test_info_memory_usage_qualifiedrr      sy     AU###F
**C
KKCK )cllnn$$$$$$#,,..((((((r(   c                     d} t          t                    }t          j        t	          t                    t          d|           gddg          }t          t          j        	                    d          
                    | |z            |          }|                    d          }|j        j        |j        j        k    sJ |                    d	
          |                    d	
                                          k    sJ |                    d	
                                          |                    d	
          z
  }|dk     sJ d S )Nd   20160101)periodsiddate)namesr   r,   Trc   i  )r8   r   r
   from_productr   r   r   r   r   r   rO   unstackvaluesnbytesr<   sum)NMr-   r$   	unstackeddiffs         r&   (test_info_memory_usage_bug_on_multiindexr      s5    	AOA#	o		
:q A A ABVn  E 	ry$$Q''77A>>eLLLA		$I8?i.55555>>t>$$y'='=4'='H'H'L'L'N'NNNNN !!t!,,0022Q^^^5N5NND$;;;;;;r(   )$ior   stringr   r:   numpyr   rP   pandas._configr   pandas.compatr   r   pandasr   r	   r
   r   r   r'   r0   markparametrizerC   rJ   rT   r]   xfailrh   rj   r   rY   rz   r7   rr   r    r(   r&   <module>r      s         " " " " " "       - - - - - -       
                  T5M22  32D  *    ( 4 IJJF F KJF t8$NOOG G POG 	E	ttE{{%	(	(	(/A/A/C/C/S*TU	ttE{{&	)	)	)40	 	 %%((EE!HH!5	6	6>#J#UU1XXu~$>??##%%5+6	
	 ) ) )    r(   