zmc
2023-10-12 ed135d79df12a2466b52dae1a82326941211dcc9
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
U
¬ý°dù+ã @s¢ddlZddlZddlZddlmZddlZddlmZm    Z    m
Z
m Z m Z m Z mZmZmZmZmZddlmZddlmZmZddlmZeje    ddddgƒe    dd    d
d gƒfe    d d dejgƒe    d ddejgƒfedd    d d    ej¡edd    d d    ej¡fedd    d d    ej¡edd    d d    ej¡fedd    dd d    ej¡edd    dd d    ej¡fgdd„ddd„ƒZejdd„ƒZ d'dd „Z!d(d!d"„Z"d)d#d$„Z#Gd%d&„d&ƒZ$dS)*éN)Ú is_list_like) Ú CategoricalÚIndexÚIntervalÚ IntervalIndexÚPeriodÚSeriesÚ    TimedeltaÚ    TimestampÚ
date_rangeÚ period_rangeÚtimedelta_range)Ú BooleanArrayÚ IntervalArray)Úget_upcast_boxéééééégçð?g@g@ú0 days©Úperiodsú1 dayZ20170101Ú20170102ú
US/Eastern©rÚtzcCst|djƒS)Nr©ÚstrÚdtype©Úx©r%ú\d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/arithmetic/test_interval.pyÚ<lambda>/ór'©ÚparamsÚidscCs|jS)zC
    Fixture for building an IntervalArray from various dtypes
    ©Úparam)Úrequestr%r%r&Úleft_right_dtypessr/cCs|\}}t ||¡S)zZ
    Fixture to generate an IntervalArray of various dtypes containing NA if possible
    )rÚ from_arrays)r/ÚleftÚrightr%r%r&Úinterval_array8sr3r2cCstt |||¡ƒS©N)rrr0©r1r2Úclosedr%r%r&Úcreate_categorical_intervalsAsr7cCstt |||¡ƒSr4)rrr0r5r%r%r&Úcreate_series_intervalsEsr8cCsttt |||¡ƒƒSr4)rrrr0r5r%r%r&Ú#create_series_categorical_intervalsIsr9c@sLeZdZejejejgddd„ƒZeje    j
e j
e e egdddddgd    d
d „ƒZd d „Zdd„Zdd„Zdd„Zej dddddedƒedddedƒeddƒg¡dd„ƒZd d!„Zd"d#„Zej dedd$ƒeed%ƒed&ƒƒed'd(d)ƒed*d+d,ƒfdd-ed.ƒejfed/dded&ƒd0ej fg¡d1d2„ƒZ!d3d4„Z"ejjdej#d'd5d6ej#d'd7d6e$dd'd8e$dd'dd9e%dd'd8e&dd'dd:e'e(d;ƒƒe'e$dd'd8ƒe )e(d<ƒ¡ej)dd=d>e*ƒge*d6g
d?d@„dAdBdC„ƒZ+ej dDd$dEd(g¡ej dFe    e(g¡dGdH„ƒƒZ,ej dIe ej)e-j.fe/e/e-j0fg¡dJdK„ƒZ1ej dLdMdNd$dd>g¡dOdP„ƒZ2d>S)QÚTestComparison)r*cCs|jSr4r,©Úselfr.r%r%r&ÚopNszTestComparison.oprrzCategorical[Interval]zSeries[Interval]zSeries[Categorical[Interval]]r)cCs|jS)z‚
        Fixture for all pandas native interval constructors.
        To be used as the LHS of IntervalArray comparisons.
        r,r;r%r%r&Úinterval_constructorRsz#TestComparison.interval_constructorcsTt|ƒr |n |gt|ƒ}t ‡fdd„t||ƒDƒ¡}t|tƒrPt||jdS|S)zZ
        Helper that performs elementwise comparisons between `array` and `other`
        csg|]\}}ˆ||ƒ‘qSr%r%)Ú.0r$Úy©r=r%r&Ú
<listcomp>nsz9TestComparison.elementwise_comparison.<locals>.<listcomp>)Úindex)rÚlenÚnpÚarrayÚzipÚ
isinstancerrC)r<r=r3ÚotherÚexpectedr%rAr&Úelementwise_comparisonis
 
z%TestComparison.elementwise_comparisoncCsj|d}|||ƒ}| |||¡}t ||¡t|jd|jdƒ}|||ƒ}| |||¡}t ||¡dS)Nrr)rKÚtmÚassert_numpy_array_equalrr1r2©r<r=r3rIÚresultrJr%r%r&Útest_compare_scalar_intervalss
 
z+TestComparison.test_compare_scalar_intervalcCsPtjtdƒtddƒ|d}tdd|d}|||ƒ}| |||¡}t ||¡dS)Nrrr©r6r)rr0ÚrangerrKrLrM)r<r=r6Ú other_closedr3rIrOrJr%r%r&Ú)test_compare_scalar_interval_mixed_closed€s
 
z8TestComparison.test_compare_scalar_interval_mixed_closedc Csž|}t ||¡}|||ƒ}|tjkr@tj|jtd}t||ƒ}    n|     |||¡}    |t
kr`|tjksxt ||dƒ}
t |    |
¡}    t  ||    ¡|||ƒ} t  | |    ¡dS)N©r"T) rLZ box_expectedÚpdZNArEZonesÚshapeÚboolrrKrrÚ assert_equal) r<r=r3Ú nulls_fixtureZbox_with_arrayZboxÚobjrOÚexprJZxboxÚrevr%r%r&Útest_compare_scalar_naˆs 
 
 
z%TestComparison.test_compare_scalar_narIrrTÚfooz
2017-01-01r)rrÚDcCs(|||ƒ}| |||¡}t ||¡dSr4©rKrLrMrNr%r%r&Útest_compare_scalar_otheržs
z(TestComparison.test_compare_scalar_othercCsº||j|jƒ}|||ƒ}| |||¡}t ||¡||jddd…|jddd…ƒ}|||ƒ}| |||¡}t ||¡|tjgdtjgdƒ}|||ƒ}| |||¡}t ||¡dS)Néÿÿÿÿr)r1r2rKrLrYrEÚnan)r<r=r3r>rIrOrJr%r%r&Útest_compare_list_like_interval°s
 ÿ
 
z.TestComparison.test_compare_list_like_intervalc    CsZtjtdƒtddƒ|d}|tdƒtddƒ|d}|||ƒ}| |||¡}t ||¡dS)NrrrrQ)rr0rRrKrLrY)    r<r=r>r6rSr3rIrOrJr%r%r&Ú,test_compare_list_like_interval_mixed_closedÅs
 
z;TestComparison.test_compare_list_like_interval_mixed_closedrrz2 daysrrZbothé
éZneithergø?Z20170103rZbazcCs(|||ƒ}| |||¡}t ||¡dSr4rarNr%r%r&Útest_compare_list_like_objectÏs
z,TestComparison.test_compare_list_like_objectcCs2|gd}|||ƒ}| |||¡}t ||¡dS)Nr)rKrLrY)r<r=r3rZrIrOrJr%r%r&Útest_compare_list_like_nanæs
 
z)TestComparison.test_compare_list_like_nanÚint64rUÚfloat64rr)rÚfreqZababZabcdg…ëQ¸    @NcCs
t|jƒSr4r r#r%r%r&r'ûr(zTestComparison.<lambda>)r+cCs(|||ƒ}| |||¡}t ||¡dSr4rarNr%r%r&Útest_compare_list_like_otherís
z+TestComparison.test_compare_list_like_otherÚlengthrÚother_constructorc    CsRt tdƒtddƒ¡}|tddƒg|ƒ}tjtdd|||ƒW5QRXdS)NrrrrzLengths must match to compare)Úmatch)rr0rRrÚpytestZraisesÚ
ValueError)r<r=rpror3rIr%r%r&Ú#test_compare_length_mismatch_errorssz2TestComparison.test_compare_length_mismatch_errorsz'constructor, expected_type, assert_funcc
CsÞtdƒ}|t |¡ƒ}|d}|||ƒ}|| |||¡ƒ}    |||    ƒ|d}|||ƒ}|| |||¡ƒ}    |||    ƒt |¡}|||ƒ}|| |||¡ƒ}    |||    ƒ|d|ddg}|||ƒ}|| |||¡ƒ}    |||    ƒdS)Nrrr_)rRrZ from_breaksrKr)
r<r=Ú constructorÚ expected_typeZ assert_funcZbreaksrCrIrOrJr%r%r&Útest_index_series_compat
s$    
 
 
 
 
 
 
 
z'TestComparison.test_index_series_compatÚscalarsÚaFcCs@tddgƒ}ttddƒtddƒgdd}||k}t ||¡dS)NFrrrÚintervalrU)rrrLÚassert_series_equal)r<rxrJÚsrOr%r%r&Útest_comparison_operations,s z)TestComparison.test_comparison_operations)3Ú__name__Ú
__module__Ú __qualname__rrÚfixtureÚoperatorÚeqÚner=rr0rr7r8r9r>rKrPrTr^ÚmarkZ parametrizer
r    rrbrerfrrErdrVÚNaTrirjZaranger r r rÚlistrFÚobjectrnrtrLrMrr{rwr}r%r%r%r&r:Ms¢
ûûø
 
 
øþ
 
 
 
ü
üøþ
 
 
 
 ö ò
 
þþ
r:)r2)r2)r2)%r‚ÚnumpyrErrZpandas.core.dtypes.commonrZpandasrVrrrrrrr    r
r r r Zpandas._testingZ_testingrLZpandas.core.arraysrrZpandas.tests.arithmetic.commonrrrdÚinsertr†r/r3r7r8r9r:r%r%r%r&Ú<module>s< 4  "þþþõï