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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
U
­ý°dbBã@s~ddlZddlZddlmZddlZddlmZmZddl    m
Z ddl m Z Gdd„deƒZGdd„de ƒZGd    d
„d
ƒZdS) éN)ÚExtensionDtype)Ú    DataFrameÚ    Timestamp)ÚExtensionArrayc@s6eZdZeZddœdd„Zedd„ƒZedd„ƒZdS)    Ú
DummyDtypeN©ÚreturncCs
||_dS©N©Z_numeric)ÚselfÚnumeric©r údd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/frame/methods/test_select_dtypes.pyÚ__init__szDummyDtype.__init__cCsdS)NZDummyr ©r r r rÚnameszDummyDtype.namecCs|jSr    r
rr r rÚ _is_numericszDummyDtype._is_numeric)    Ú__name__Ú
__module__Ú __qualname__ÚintÚtyperÚpropertyrrr r r rrs 
rc@sLeZdZddœdd„Zdd„Zedd„ƒZedœd    d
„Zd d „Z    d d„Z
dS)Ú
DummyArrayNrcCs||_||_dSr    )ÚdataÚ_dtype)r rÚdtyper r rrszDummyArray.__init__cCs|jSr    )r)r rr r rÚ    __array__#szDummyArray.__array__cCs|jSr    )rrr r rr&szDummyArray.dtypecCs
t|jƒSr    )Úlenrrr r rÚ__len__*szDummyArray.__len__cCsdSr    r )r Úitemr r rÚ __getitem__-szDummyArray.__getitem__cCs|Sr    r rr r rÚcopy0szDummyArray.copy) rrrrrrrrrr!r"r r r rrs
rc @s:eZdZdd„Zdd„Zdd„Zej de    j
dfe    j
d    fd
e fg¡d d „ƒZ d d„Z dd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zdd„Zej ded e    jd!d"e    jd#g¡ej d$dd%g¡d&d'„ƒƒZd(d)„Zd*d+„Zej d,e    jd-d.ge    jd/d0fejd-d.gd1d/d0fed-d.ge d0d2d/d0fed-d.ge d3d2d/d3ff¡d4d5„ƒZ!d6d7„Z"ej d8e#e$d9ƒe$d:d;ƒe$d<d=d>ƒd?œƒj%e&e    j'e    j(d?œd/e&ge#e$d9ƒe$d:d;ƒe$d<d=d>ƒd?œƒj%e&e    j'e    j(d?œd/d@ge#dAe$d<d=d>ƒie    j(d/e    j(ge#e$d9ƒe$d:d;ƒdBœƒj%e&e    j'dBœd/e    j'gg¡dCdD„ƒZ)dEdF„Z*dGdH„Z+dIS)JÚTestSelectDtypescCs¶ttdƒttddƒƒt dd¡ d¡tjddd    d
d d d gt tdƒ¡tjd ddtjd dddtjd dddtj    ddddtj
ddddœ ƒ}|j tj gd}|ddddg}t  ||¡|j tj gdgd}|dddg}t  ||¡|j tj dgdgd}|ddddg}t  ||¡|j d gd}|d!g}t  ||¡|j d"gd}|d!g}t  ||¡|j d#gd}|d$d%g}t  ||¡tjtd&d'|j d(gdW5QRXdS))NÚabcééééÚu1ç@ç@Úfloat64©rTFÚ20130101©Úperiodsú
US/Eastern©r0ÚtzÚCETú2013-01ÚM©r0Úfreqú1 day© ÚaÚbÚcÚdÚeÚfÚgÚhÚiÚjÚk©Úincluder<r=r>rEÚ    timedelta©rGÚexcludeÚcategoryr@ÚdatetimerAÚ
datetime64Z
datetimetzrBrCú^$©ÚmatchÚperiod©rÚlistÚrangeÚnpÚarangeÚastypeÚpdÚ CategoricalÚ
date_rangeÚ period_rangeÚtimedelta_rangeÚ select_dtypesÚnumberÚtmÚassert_frame_equalÚpytestÚraisesÚNotImplementedError©r ÚdfÚriÚeir r rÚ*test_select_dtypes_include_using_list_like5sD    õÿ   
 
   z;TestSelectDtypes.test_select_dtypes_include_using_list_likec    Csnttdƒttddƒƒt dd¡ d¡tjddd    d
d d d gd œƒ}|jtjgd}|ddg}t     ||¡dS)Nr$r%r&r'r(r)r*r+r,r-TF©r;r<r=r>r?©rJr;r?)
rrSrTrUrVrWr]r^r_r`)r reÚreÚeer r rÚ*test_select_dtypes_exclude_using_list_likeas ûÿ     z;TestSelectDtypes.test_select_dtypes_exclude_using_list_likec
Csºttdƒttddƒƒtjddddtjdd    d
dd d d gtjd ddjdœƒ}tjf}tj    df}|j
||d}|dddg}t   ||¡d}d}|j
||d}|ddg}t   ||¡dS)Nr$r%r&r'r(r)r-r*r+r,TFÚnowr/©r;r<r=r>r?r@ÚintegerrIr<r=r?)rL)ÚboolÚint64Úint32) rrSrTrUrVrXrZÚvaluesrMÚbool_r]r_r`)r rerJrGÚrr?r r rÚ2test_select_dtypes_exclude_include_using_list_likeos& úÿ
 
  zCTestSelectDtypes.test_select_dtypes_exclude_include_using_list_likerGrrprqc
Cs‚ttdƒttddƒƒtjddddtjdd    d
dd d d gtjd ddjdœƒ}tjf}|j    ||d}|dddg}t
  ||¡dS)Nr$r%r&r'r(rsr-r*r+r,TFrnr/rorIr<r=r?) rrSrTrUrVrXrZrtrMr]r_r`)r rGrerJÚresultÚexpectedr r rÚ&test_select_dtypes_exclude_include_int†s úÿ
z7TestSelectDtypes.test_select_dtypes_exclude_include_intcCsJttdƒttddƒƒt dd¡ d¡tjddd    d
d d d gt tdƒ¡tjd ddtjd dddtjd dddtj    ddddtj
ddddœ ƒ}|j tj d}|ddddg}t  ||¡|j dd}|dg}t  ||¡|j dd}|dg}t  ||¡|j dd}|d g}t  ||¡tjtd!d"|j d#dW5QRXdS)$Nr$r%r&r'r(r)r*r+r,r-TFr.r/r1r2r4r5r6r7r9r:rFr<r=r>rErLrArMrKr@rNrOrQrRrdr r rÚ(test_select_dtypes_include_using_scalarsšs8    õÿ  
 
 
 z9TestSelectDtypes.test_select_dtypes_include_using_scalarscCsttdƒttddƒƒt dd¡ d¡tjddd    d
d d d gt tdƒ¡tjd ddtjd dddtjd dddtj    ddddtj
ddddœ ƒ}|j tj d}|dddddddg}t  ||¡|j dd}|dd d!d"dddddd#g
}t  ||¡tjtd$d%|j d&dW5QRXdS)'Nr$r%r&r'r(r)r*r+r,r-TFr.r/r1r2r4r5r6r7r9r:rjr;r?r@rArBrCrDrKr<r=r>rErNrOrQrRrdr r rÚ(test_select_dtypes_exclude_using_scalars¾s,    õÿ   z9TestSelectDtypes.test_select_dtypes_exclude_using_scalarscCs¾ttdƒttddƒƒt dd¡ d¡tjddd    d
d d d gt tdƒ¡tjd ddtjd dddtjd dddtj    ddddtj
ddddœ ƒ}|j tj dd}|dddg}t  ||¡dS)Nr$r%r&r'r(r)r*r+r,r-TFr.r/r1r2r4r5r6r7r9r:ÚfloatingrIr<r=rE©rrSrTrUrVrWrXrYrZr[r\r]r^r_r`rdr r rÚ0test_select_dtypes_include_exclude_using_scalarsÚs"    õÿzATestSelectDtypes.test_select_dtypes_include_exclude_using_scalarscCsðttdƒttddƒƒt dd¡ d¡tjddd    d
d d d gt tdƒ¡tjd ddtjd dddtjd dddtj    ddddtj
ddddœ ƒ}|j tj ddgd}|ddg}t  ||¡|j tj dgdd}|ddddg}t  ||¡dS)Nr$r%r&r'r(r)r*r+r,r-TFr.r/r1r2r4r5r6r7r9r:r}rHrIr<r=rKr@rEr~rdr r rÚ6test_select_dtypes_include_exclude_mixed_scalars_listsïs(    õÿ  zGTestSelectDtypes.test_select_dtypes_include_exclude_mixed_scalars_listsc
Csªtdddgdddgt dd¡ d¡tjd    d
d d d dd gtjdddjdœƒ}ddddddg|_ttt    ddƒƒt dd¡ d¡dœƒ}|j
tj gdgd}t   ||¡dS)Nr;r<r=r%ér'r(r)r*r+r,r-TFrnr/ror&©r;r<r}rI)rrUrVrWrXrZrtÚcolumnsrSrTr]r^r_r`)r reryrxr r rÚ$test_select_dtypes_duplicate_columnssúÿ
 ÿz5TestSelectDtypes.test_select_dtypes_duplicate_columnsc
CsÈttdƒttddƒƒt dd¡ d¡tjddd    d
d d d gtjd ddjdœƒ}|j     
¡|d<t tdƒrlt ‚|j ddgdgd}|ddg}t ||¡|j dddgd}|dddg}t ||¡dS)Nr$r%r&r'r(r)r*r+r,r-TFrnr/rorAÚu8Úi8ÚOrHrIr;r<ztimedelta64[ns]rF)rrSrTrUrVrWrXrZrtr@ZdiffÚhasattrÚAssertionErrorr]r_r`)r rervr?r r rÚ4test_select_dtypes_not_an_attr_but_still_valid_dtypes" úÿ
  zETestSelectDtypes.test_select_dtypes_not_an_attr_but_still_valid_dtypec    CsFttdƒttddƒƒdœƒ}d}tjt|d| ¡W5QRXdS)Nr$r%r&r‚z3at least one of include or exclude must be nonemptyrO)rrSrTrarbÚ
ValueErrorr]©r reÚmsgr r rÚtest_select_dtypes_empty2sz)TestSelectDtypes.test_select_dtypes_emptyc
Cs¤ttdƒttddƒƒt dd¡ d¡tjddd    d
d d d gtjd ddjdœƒ}t    j
t dd|j dgdW5QRXt    j
t dd|j dgdW5QRXdS)Nr$r%r&r'r(r)r*r+r,r-TFrnr/roz.+ is too specificrOz datetime64[D]rFzdatetime64[as]rj) rrSrTrUrVrWrXrZrtrarbr‹r])r rer r rÚ!test_select_dtypes_bad_datetime648s úÿ
z2TestSelectDtypes.test_select_dtypes_bad_datetime64cCsnttdddtddddœtdƒd}tj|j ¡|j ¡gd    d
}|jd gd }|j    gd }t
  ||¡dS)NZ20130102r1)r3Z20130603r4©ÚAÚBé)Úindexr%)Zaxiszdatetime64[ns]rF)rƒ) rrrTrXÚconcatr‘Zto_framer’r]Zreindexr_r`)r Zdf2Zdf3rxryr r rÚ#test_select_dtypes_datetime_with_tzIs
 
þû z4TestSelectDtypes.test_select_dtypes_datetime_with_tzrÚstrZS1ÚunicodeZU1ÚargrJc CsŽttdƒtdƒttddƒƒt dd¡ d¡tjddd    d
d d d gtjd ddjdœƒ}d}||gi}t    j
t |d|j f|ŽW5QRXdS)Nr$r%r&r'r(r)r*r+r,r-TFrnr/©r;rAr<r=r>r?r@zstring dtypes are not allowedrO© rrSrTrUrVrWrXrZrtrarbÚ    TypeErrorr])r rr™rerÚkwargsr r rÚtest_select_dtypes_str_raisesVs ùÿ 
z.TestSelectDtypes.test_select_dtypes_str_raisesc Cs„ttdƒtdƒttddƒƒt dd¡ d¡tjddd    d
d d d gtjd ddjdœƒ}d}t    j
t |d|  dg¡W5QRXdS)Nr$r%r&r'r(r)r*r+r,r-TFrnr/ršzdata type.*not understoodrOzblargy, blarg, blargr›rŒr r rÚ!test_select_dtypes_bad_arg_raisesls ùÿ z2TestSelectDtypes.test_select_dtypes_bad_arg_raisescCs<tjdddd„d}|}ttjdƒ}t | |¡|¡dS)Nér'cSs
tj ¡Sr    )rUÚrandom)ÚxÚyr r rÚ<lambda>óz?TestSelectDtypes.test_select_dtypes_typecodes.<locals>.<lambda>)Z
data_gen_fZAllFloat)r_ZmakeCustomDataframerSrUZ    typecodesr`r])r reryZ FLOAT_TYPESr r rÚtest_select_dtypes_typecodes}sz-TestSelectDtypes.test_select_dtypes_typecodesz arr,expectedr%rr-TZInt32)r FcCs,t|ƒ}| tj¡j|jk}||ks(t‚dSr    )rr]rUr^Úshaper‰)r ÚarrryreÚ is_selectedr r rÚtest_select_dtypes_numeric„s z+TestSelectDtypes.test_select_dtypes_numericcCs:tjddg|d}t|ƒ}| tj¡j|jk}|r6t‚dS)Nr;r<r-)rXÚarrayrr]rUr^r§r‰)r Znullable_string_dtyper¨rer©r r rÚ*test_select_dtypes_numeric_nullable_string”sz;TestSelectDtypes.test_select_dtypes_numeric_nullable_stringzexpected, float_dtypesr'r“éé
ééÿÿÿÿ©r‘r’ÚCÚfloatr²rcCsXttjtjdœ}ttdƒtddƒtdddƒdœƒ}| |¡}|j|d}t     ||¡dS)    Nr±r'r“r­r®r¯r°rF)
r³rUr,Úfloat32rrTrWr]r_r`)r ryZ float_dtypesZ
dtype_dictrerxr r rÚtest_select_dtypes_float_dtypešsÿ
 z/TestSelectDtypes.test_select_dtypes_float_dtypec
Cs~tdddgtjdddgddt dddg¡t dddg¡tj dddg¡dœƒ}|jd    d
}td dddgiƒ}t     
||¡dS) Nr%rr'TFÚbooleanr-rir^rFr;) rrXZSeriesrUr«rYZarraysZ SparseArrayr]r_r`)r rerxryr r rÚ&test_np_bool_ea_boolean_include_number¼sûÿ     z7TestSelectDtypes.test_np_bool_ea_boolean_include_numbercCsJtdddgdddgdœƒ}| ¡}|jdgd    }d
|jd <t ||¡dS) Nr%rr'r&r“r(r‚r^rFr)rr)rr"r]Zilocr_r`)r reZdf_origrxr r rÚtest_select_dtypes_no_viewËs
 
z+TestSelectDtypes.test_select_dtypes_no_viewN),rrrrhrmrwraÚmarkZ parametrizerUrurrzr{r|rr€r„rŠrŽrr–r—Zstring_Zunicode_ržrŸr¦r«rsrXrrrªr¬rrTrWr³r,r´rµr·r¸r r r rr#4s|,ÿ
$ ÿ üþ    
ÿþüÿþü
ÿüòþ
 
r#)ÚnumpyrUraZpandas.core.dtypes.dtypesrZpandasrXrrZpandas._testingZ_testingr_Zpandas.core.arraysrrrr#r r r rÚ<module>s