1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
U
­ý°d#ã
@sÄddlZddlZddlmZmZmZmZm    Z    m
Z
ddl m Z m Z ejjgZdd„Zdd„Zdd    „Zej d
d ed d ddgiƒed giƒfded d ddgiƒed d giƒfg¡eeedœdd„ƒZdS)éN)Ú CategoricalÚ    DataFrameÚSeriesÚ_testingÚconcatÚread_hdf)Ú _maybe_removeÚensure_clean_storec
 
Cst|ƒ
}t|dƒttddddddgddddgddƒ}|jd|dd    | d¡}t ||¡t|d
ƒttddddddgddddgd dƒ}|jd
|dd    | d
¡}t ||¡t|d ƒt|d dddddgdœƒ}|jd |dd    | d ¡}t     ||¡t|dƒtd d dddddgƒ 
d¡}| d|¡| d¡}t ||¡t|dƒtd d t j ddddgƒ 
d¡}| d|¡| d¡}t ||¡t|dƒ|  ¡}ttdƒƒ 
d¡|d<| d|¡| d¡}t     ||¡| ¡}d|ksôt‚d|kst‚d|kst‚t|dƒttddddddgddddgddƒ}|jd|dd    | d¡}t ||¡t|dƒ|jd|dgd||j ddg¡}|jddgd }t     ||¡||j ddg¡}|jdd!gd }t     ||¡||j dg¡}|jdd"gd }t     ||¡||j d#g¡}|jdd$gd }t     ||¡| d|¡t||gƒ}||j ddg¡}|jddgd }t     ||¡|  ¡}|dj ¡|d<d%}    tjt|    d&| d|¡W5QRX| d'¡}|dk    sât‚| d¡tjtd(d&| d'¡W5QRXW5QRXdS))NÚsÚaÚbÚcÚdF)Ú
categoriesZorderedÚtable)ÚformatZ    s_orderedTÚdféééééé)r
ÚvalsÚsiÚcategoryZsi2Údf2ZabcdefgÚs2z/df2   z/df2/meta/values_block_0/metaz/df2/meta/values_block_2/metaÚdf3)Ú data_columnszs in ["b","c"]©Úwherez s = ["b","c"]z
s in ["d"]Úfz
s in ["f"]zEcannot append a categorical with different categories to the existing)Úmatchzdf3/meta/s/metaz-'No object named df3/meta/s/meta in the file')r    rrrÚappendÚselectÚtmZassert_series_equalrÚassert_frame_equalÚastypeÚnpÚnanÚcopyÚlistÚinfoÚAssertionErrorr
ÚisinrÚcatZremove_unused_categoriesÚpytestZraisesÚ
ValueErrorÚremoveÚKeyError)
Ú
setup_pathÚstorer
Úresultrrr-ÚexpectedrÚmsg©r:ú`d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/io/pytables/test_categorical.pyÚtest_categoricals¶ 
 
ýÿ
 
 
ýÿ
 
 
 
 
 
 
 
 
 
 
ýÿ
 
 
 
ÿr<c    CsÔddg}ddg}ddg}t|||dœƒ}|jgdd…f}||}|j|dd    d
d t|dd d }t ||¡|j d¡|_|j d¡|_|jgdd…f}||}|j|dd    d
d t|dd d }t ||¡dS)NZESP_012345_6789ZESP_987654_3210Z
APF00006npZ
APF0001immg333333@gš™™™™™#@)ÚobsidsÚimgidsÚdatarrT©rrzobsids=Br r)    rZilocÚto_hdfrr&r'r=r(r>)    Útmp_pathr5r=r>r?rr8Úpathr7r:r:r;Útest_categorical_conversions  rDcCsªtdddtjgtjtjtjtjgddddgtdgdtdd    œƒ}|j d
¡|d<|j d
¡|d<|j d
¡|d <|}||}|j|d d ddt    |d ƒ}t
  ||¡dS)Nr r r rrrr)Zdtype)r r r rrrrrTr@) rr)r*rÚobjectr r(r rArr&r')rBr5rr8rCr7r:r:r;Ú!test_categorical_nan_only_columns­s 
üÿ
rFzwhere, df, expectedzcol=="q"Úcolr r r
zcol=="a")r!rr8c    Csx|j d¡|_ddi}t|j ¡ƒ}|j d¡|_|jj |¡|_||}|j|dd|dt||d}t     ||¡dS)NrrGrrr)rZ min_itemsizer )
rGr(ÚsortedÚuniquer0Zset_categoriesrArr&r')    rBr5r!rr8Z
max_widthsZcategorical_valuesrCr7r:r:r;Útest_convert_valueÃs  rJ)Únumpyr)r1Zpandasrrrrr&rrZpandas.tests.io.pytables.commonrr    ÚmarkZ
single_cpuZ
pytestmarkr<rDrFZ parametrizeÚstrrJr:r:r:r;Ú<module>s$ ÿy þþÿ