zmc
2023-12-22 9fdbf60165db0400c2e8e6be2dc6e88138ac719a
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
91
92
93
94
95
96
97
98
99
100
101
102
103
U
­ý°d5:ã@sRddlZddlZddlZddlmZmZmZmZm    Z    ddl
m Z Gdd„dƒZ dS)éN)Ú CategoricalÚ    DataFrameÚSeriesÚ    TimestampÚ
date_rangec@s²eZdZdd„Zdd„Zdd„Zdd„Zd    d
„Zd d „Zd d„Z    dd„Z
dd„Z dd„Z dd„Z dd„Zdd„Zej dddddgddgg¡dd „ƒZd!d"„Zd#d$„Zd%d&„Zd'S)(ÚTestDataFrameDescribec
Cs¶tdddddgdddddgdd    d
d d gd œƒ}| ¡}tddd
|j ¡dd    d
d d giddddddddgd}t ||¡|jdgd}tdddddgidddd gd}t ||¡dS)!NÚaÚbÚcÚdÚeTFé
ééé(é2)Z string_dataÚ    bool_dataÚint_dataréÚcountÚmeanÚstdÚminú25%ú50%ú75%Úmax©ÚindexÚbool©ÚincluderééÚuniqueÚtopÚfreq)rÚdescriberrÚtmÚassert_frame_equal©ÚselfÚdfÚresultÚexpected©r/ú_d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/frame/methods/test_describe.pyÚ!test_describe_bool_in_mixed_frames$   ýÿ
þ 
ÿz7TestDataFrameDescribe.test_describe_bool_in_mixed_framecCsptdddgitd}| ¡}tdddtjtjgitddddgd}t ||¡|jdd… ¡}t ||¡dS)    NÚA©Údtyperrr$r%r&)r4r)rÚobjectr'ÚnpÚnanr(r)Úilocr*r/r/r0Útest_describe_empty_object*s
ý z0TestDataFrameDescribe.test_describe_empty_objectc
Cs(tddddgddddgdœƒ}| ¡}tddddgddddgdœddd    d
gd }t ||¡tdddddgd d dddgdœƒ}| ¡}tddd|j ¡d d dddgiddddddddgd }t ||¡tddddgddddgdœƒ}| ¡}tddddgddddgdœddd    d
gd }t ||¡dS)NFT)Z bool_data_1Z bool_data_2ér"r#rr$r%r&rré)rrrrrrrrrrrrr    r
)rZstr_data)rr'r(r)rrr*r/r/r0Útest_describe_bool_frame8s>
 
þÿ
þ   þÿþ ÿ
þz.TestDataFrameDescribe.test_describe_bool_framec    Cs(tdtj ddd¡iƒ}dd„tdddƒDƒ}t||ƒ}|jdgdd    }tj|j    tdd
dƒd |d |d <|}| 
¡}t |j ƒdks†t ‚tddddgdddgdd}t|ƒ}| 
¡}tddddgddddgd}t ||¡ttddddgƒƒ}t|ddddgdœƒ}| 
¡}t |dj|dj¡dS)NÚvalueri'édcSsg|]}|›d|d›‘qS)z - iór/)Ú.0Úir/r/r0Ú
<listcomp>`szCTestDataFrameDescribe.test_describe_categorical.<locals>.<listcomp>iôT)ZbyZ    ascendingi)F)ÚrightÚlabelsZ value_groupr;rr    r
)Ú
categoriesÚorderedr:r"r#rr$r%r&r)ÚcatÚsrFrG)rr6ÚrandomÚrandintÚrangerZ sort_valuesÚpdZcutr=r'ÚlenÚcolumnsÚAssertionErrorrr(Zassert_series_equalZassert_numpy_array_equalÚvalues)    r+r,rCZ
cat_labelsrFr-rGr.Zdf3r/r/r0Útest_describe_categorical^s4
 
ÿ
 
ÿ z/TestDataFrameDescribe.test_describe_categoricalcCsvtdtgƒiƒ}| ¡}tdddtjtjgiddddgdd}t ||¡t |jd    ¡s^t    ‚t |jd
¡srt    ‚dS) NZ    empty_colrrr$r%r&r5©rr4)r"r)r#r)
rrr'r6r7r(r)Úisnanr8rNr*r/r/r0Ú&test_describe_empty_categorical_column}s
ý z<TestDataFrameDescribe.test_describe_empty_categorical_columnc
Csàtjdddgddd}tddd    d
d gddd    d
d gd d dddgdœ|d}| ¡}tjddgdddgddd}tdd    |j ¡ddd    d
d gdd    |j ¡ddd    d
d gdœddddddddg|d}t ||¡t     |j
j |j
j ¡dS)NÚint1Úint2ÚobjTÚXXX)rEÚnamer rrrrr2rÚXr;)rTrUrV)rM)rDrErXr)rTrUrrrrrrrr)rrM) rKZCategoricalIndexrr'rTrrUr(r)Zassert_categorical_equalrMrO©r+rMr,r-Z exp_columnsr.r/r/r0Ú!test_describe_categorical_columnss0   ýúüþú     z7TestDataFrameDescribe.test_describe_categorical_columnsc
Cs tjdddgdddd}tdd    d
d d gdd    d
d d gd ddddgdœƒ}||_| ¡}tjddgdddd}tdd
|jdd…df ¡dd    d
d d gdd
|jdd…df ¡dd    d
d d gdœddddddddgd}||_t ||¡|jj    dksòt
‚|jj |jj kst
‚dS)Nz
2011-01-01z
2011-02-01z
2011-03-01ZMSz
US/EasternrW)r&ÚtzrXr rrrrr2rrYr;)rr;r"r)rr;rrrrrrrrr) rKZ DatetimeIndexrrMr'r8rr(r)r&rNr\rZr/r/r0Útest_describe_datetime_columns¬s<ü   ýÿÿ$$þû z4TestDataFrameDescribe.test_describe_datetime_columnsc Cs
tjdddd}tjdddd}t||dœƒ}tdt d¡|jdd…d    f ¡t d¡t d
¡t d¡t d ¡t d ¡gdt d ¡|jdd…df ¡t d¡t d¡t d ¡t d¡t d¡gdœddddddddgd}| ¡}t ||¡d}t    |ƒ|kst
‚dS)Nz1 daysÚDr)r&Úperiodsz1 hoursÚH)Út1Út2z3 daysrz2 daysz4 daysz5 daysz3 hoursr;z2 hoursz4 hoursz5 hoursrrrrrrrrra                              t1                         t2
count                          5                          5
mean             3 days 00:00:00            0 days 03:00:00
std    1 days 13:56:50.394919273  0 days 01:34:52.099788303
min              1 days 00:00:00            0 days 01:00:00
25%              2 days 00:00:00            0 days 02:00:00
50%              3 days 00:00:00            0 days 03:00:00
75%              4 days 00:00:00            0 days 04:00:00
max              5 days 00:00:00            0 days 05:00:00) rKZtimedelta_rangerZ    Timedeltar8rr'r(r)ÚreprrN)r+rarbr,r.r-Zexp_reprr/r/r0Útest_describe_timedelta_valuesÌs<ø øõé ÿ z4TestDataFrameDescribe.test_describe_timedelta_valuesc
CsÎ|}ttdƒƒ}tdddƒ}tdddƒ}tt|||dƒ}t||dœƒ}tddddddd    d
gdtdddƒ |¡| |¡|d|d|d| |¡tjgdœd d d dddddgd}|jdd}    t     
|    |¡dS)Nréâr;©r\©Ús1Ús2r"rr#r:gßávhXLù?rrrrrrrrrÚallr ) rrJrrrZ tz_localizer6r7r'r(r))
r+Ztz_naive_fixturer\rhÚstartÚendrir,r.r-r/r/r0Útest_describe_tz_valuesüs,   øþ ò z-TestDataFrameDescribe.test_describe_tz_valuesc
Csttddddddgdœƒ}| ¡}tdtdƒtdƒtd    ƒtdƒtd
ƒtd ƒtjgdddd dd ddgdœddddddddgd}t ||¡dS)NZ2012r#)r_r;r"©rr    z
2012-01-02z
2012-01-01z2012-01-01T12:00:00z2012-01-02T12:00:00z
2012-01-03çø?ç@rrrrrrrrr)rrr'rr6r7r(r)r*r/r/r0Ú*test_datetime_is_numeric_includes_datetimes"ø
õ òz@TestDataFrameDescribe.test_datetime_is_numeric_includes_datetimec Csªd}ttdƒƒ}tdddƒ}tdddƒ}tt|||dƒ}t||dœƒ}| ¡}| ¡}ddd    d
d d d dg}    tj||gdddgdj|    dd}
|jdd} t     
| |
¡dS)NZCETrrer;rfrgrrrrrrrrrhri)ÚaxisÚkeysF)Úcopyrjr ) rrJrrrr'rKÚconcatZreindexr(r)) r+r\rhrkrlrir,Zs1_Zs2_Úidxr.r-r/r/r0Útest_describe_tz_values2-s.   ø
ÿ z.TestDataFrameDescribe.test_describe_tz_values2cCs‚tddgiƒ}t ddd¡}|j|d}tdddtjdfdd„|Dƒd•id    d
d d d dddddddddddgd}t ||¡dS)NÚxr;ré )Z percentilesçð?css|]
}dVqdS)rzNr/)r?Ú_r/r/r0Ú    <genexpr>OszNTestDataFrameDescribe.test_describe_percentiles_integer_idx.<locals>.<genexpr>rrrrz0%z10%z20%z30%z40%rz60%z70%z80%z90%z100%rr)rz)rr6Zlinspacer'ÚNaNr(r))r+r,Zpctr-r.r/r/r0Ú%test_describe_percentiles_integer_idxHs0  ðþz;TestDataFrameDescribe.test_describe_percentiles_integer_idxcCsXtdddiidddiigƒ}tdddddidgiddd    d
gd }| ¡}t ||¡dS) NÚtestrÚ1Ú2r"r;rr$r%r&r)rr'r(r))r+r,r.r-r/r/r0Ú8test_describe_does_not_raise_error_for_dictlike_elementses
ÿzNTestDataFrameDescribe.test_describe_does_not_raise_error_for_dictlike_elementsÚexcluderxÚyÚzc    CsFtdgdgdgdœƒ}d}tjt|d|jd|dW5QRXd    S)
zU
        When include is 'all', then setting exclude != None is not allowed.
        r;r"r#)rxr„r…z*exclude must be None when include is 'all')Úmatchrj©r!rƒN)rÚpytestZraisesÚ
ValueErrorr')r+rƒr,Úmsgr/r/r0Ú2test_describe_when_include_all_exclude_not_allowednszHTestDataFrameDescribe.test_describe_when_include_all_exclude_not_allowedcCsrtdddgdddgdddggdddgdd}| ¡}|jdd…df ¡}tj|||g|jdd    }t ||¡dS)
Nr;r"r#ÚbarrÚfloat64)rMr4r)rsrr)rr'r8rKrurMr(r))r+r,r-Zserr.r/r/r0Ú$test_describe_with_duplicate_columnsxsýz:TestDataFrameDescribe.test_describe_with_duplicate_columnsc
Csztdtjtjgtjdœ|d}| ¡}tddtjgdgddgtjgddœdd    d
d d d ddgdd}t ||¡dS)Nr;rnr3rzrgérrrrrrrrZFloat64rQ)rrKZNAr'r(r))r+Zany_numeric_ea_dtyper,r-r.r/r/r0Útest_ea_with_naƒs(ýz%TestDataFrameDescribe.test_ea_with_nac
CsÐt d¡}ttdddgt | ¡¡dtdddgt | ¡¡dtdddgt | ¡¡ddœƒ}|j    t | ¡¡t | ¡¡d}tdddddd    dd
dgid d d dddddgt | 
¡¡d}t   ||¡dS)NZpyarrowr;r"r#r3)rr    r
r‡rrorprrrrrrrrrQ) rˆZ importorskiprrrKZ
ArrowDtypeZint8Úint16Úint32r'rr(r))r+Úpar,r-r.r/r/r0Útest_describe_exclude_pa_dtypes"
ýÿ ÿ ýz4TestDataFrameDescribe.test_describe_exclude_pa_dtypeN)Ú__name__Ú
__module__Ú __qualname__r1r9r<rPrSr[r]rdrmrqrwr~r‚rˆÚmarkZ parametrizer‹rŽrr”r/r/r/r0rs$& 0    
      r)Únumpyr6rˆZpandasrKrrrrrZpandas._testingZ_testingr(rr/r/r/r0Ú<module>s