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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
U
­ý°dkFã
@s´ddlmZmZddlmZmZmZddlZddl    Z    ddl
m Z m Z ddl mZGdd„dƒZdd„Zee d    d
¡e d    d
¡e d    d
¡e d    d
¡e d    d
¡e d    d
¡ƒd d „ƒZdS) é)ÚdatetimeÚ    timedelta)ÚassumeÚgivenÚ
strategiesN)ÚIndexÚ
RangeIndexc@sìeZdZej ddddg¡dd„ƒZdd„Zd    d
„Zd d „Z    d d„Z
ejjde dddƒe dddƒe dddƒe dddƒfe dddƒe dddƒe dddƒe dddƒfe dddƒe dddƒe dddƒe dddƒfe dddƒe dddƒe dddƒe dddƒfe dddƒe dddƒe dddƒe dddƒfe dddƒe dddƒe dddƒe e edddƒƒe edddƒƒƒfe dddƒe dddƒe dddƒe e edddƒƒe edddƒƒƒfe dddƒe dddƒe dddƒe e edddƒƒe edddƒƒƒfe dddƒe dd dƒe dddƒe e edddƒƒe edd dƒƒƒfe dd!dƒe dd!dƒe dd!dƒe dd!dƒfe dd"d#ƒe dd"dƒe d$ddƒe e edd"d#ƒƒdgƒfe dd%dƒe dd&d'ƒe d%ddƒe e edd%dƒƒdd%gƒfe dƒe dƒe dƒe dƒfe dddƒe dƒe dddƒe dddƒfe dd!dƒe d!d(d)ƒe dd*dƒe dd*dƒfe dd"dƒe d"d+d*ƒe d"ddƒe e edd"dƒƒd"dgƒfe dd"dƒe dd,d-ƒe d.ddƒe dd"dƒfe dddƒe dd/dƒe dd/dƒe dddƒfe dddƒe d#d0dƒe d#ddƒe ddd#gƒfe dd1dƒe dddƒe ddddgƒe ddddgƒfe dddƒe gejd2e dddƒe dddƒfe dƒe ddd/gƒe ddd/gƒe ddd/gƒfe ddƒe ddƒe ddƒe ddƒfgd3d4„d5d6d7„ƒZd8d9„Zd:d;„Zd<d=„Zd>d?„Zd@dA„ZdBdC„ZdDdE„ZdFdG„ZdS)HÚTestRangeIndexSetOpsÚdtypeNÚint64Zuint64cCstddddd}t||d}| tj¡}| |¡}tj||dd| |¡}tj||dd| |d    d…¡}tj||d    d…dd|d    d… |¡}tj||d    d…dd| |dd…¡}tj||dd…dd|dd… |¡}tj||dd…dddS)
NrééÚfoo©ÚstartÚstopÚstepÚname©r
T©Úexacté)rrÚastypeÚnpÚfloat64Ú intersectionÚtmÚassert_index_equal)Úselfr
ÚindexZfltÚresult©r!ú^d:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/indexes/ranges/test_setops.pyÚ"test_intersection_mismatched_dtypes  
 
z7TestRangeIndexSetOps.test_intersection_mismatched_dtypecCsœtddd|dd}|j|dd… |d¡|d}tj||dd… |d¡dd|dd…j| |d¡|d}tj||dd… |d¡dddS)    Nrr r rr©ÚsortTr)rrÚrenamerr)rr%Únamesrr r!r!r"Útest_intersection_empty3s
 " z,TestRangeIndexSetOps.test_intersection_emptyc    Csjtdddd}tt dd¡ƒ}|j||d}tt t |j|j¡¡ƒ}t     ||¡|j||d}tt t 
t |j|j¡¡¡ƒ}t     ||¡tddƒ}|j||d}tt t |j|j¡¡ƒ}tj    ||dd    td
dd ƒ}|j||d}tt t |j|j¡¡ƒ}tj    ||dd    |j||d}tj    ||dd    td d d ƒ}td
dd ƒ}|  t ¡j|  t ¡|d}|j||d  t ¡}t     ||¡|j||d  t ¡}t     ||¡td
dd}td
d ddd}|j||d}tddddd}t     ||¡td dd ƒ}|j||d}tdddƒ}t     ||¡tdddƒ}|j||d}tdddƒ}t     ||¡|j||d}t     ||¡dS)Nrr r ©rrrrér$Úequivrééÿÿÿÿé
éþÿÿÿéüÿÿÿr©réûÿÿÿ) rrrZarangerr%Z intersect1dÚvaluesrrZasarrayrÚint)rr%rÚotherr ÚexpectedÚfirstr!r!r"Útest_intersection?sT ÿ 
             z&TestRangeIndexSetOps.test_intersectioncCsZtddd|dd}tddd|dd}|j||d}tddd|dd}t ||¡dS)Nrr.r rr1ér$)rrrr)rr%r'rr5r r6r!r!r"Ú%test_intersection_non_overlapping_gcd~s
z:TestRangeIndexSetOps.test_intersection_non_overlapping_gcdcCs„tdddd}tdd„tdƒDƒtd}|j||d    }tt ||f¡ƒ}t ||¡|j||d    }tt ||f¡ƒ}t ||¡dS)
Nrr r r)cSsg|]}t ¡t|ƒ‘qSr!)rÚnowr)Ú.0Úir!r!r"Ú
<listcomp>‰szATestRangeIndexSetOps.test_union_noncomparable.<locals>.<listcomp>r9rr$)    rrÚrangeÚobjectÚunionrZ concatenaterr)rr%rr5r r6r!r!r"Útest_union_noncomparable†s z-TestRangeIndexSetOps.test_union_noncomparablez/idx1, idx2, expected_sorted, expected_notsortedrr.rr,r iöÿÿÿr-éìÿÿÿiíÿÿÿr é é ér9r/éiëÿÿÿédiœÿÿÿr2i¡ÿÿÿiõÿÿÿiôÿÿÿr0é–éÈéfé2iÎÿÿÿéýÿÿÿiÿÿÿr*iúÿÿÿércCst|tƒrt|ƒS|S)N)Ú
isinstancerÚrepr)Úxr!r!r"Ú<lambda>ózTestRangeIndexSetOps.<lambda>)ÚidscCsˆ|j|dd}tj||dd|j|dd}tj||dd|j|dd}t|j|jdj|dd}tj||ddtj||dddS)Nr$TrFr1r+)rArrrZ_valuesr)rZidx1Zidx2Zexpected_sortedZexpected_notsortedZres1Zres2Zres3r!r!r"Útest_union_sorted’sz&TestRangeIndexSetOps.test_union_sortedc CsZttdddƒƒ}ttdddƒƒ}| |¡}tddddddd    d
d d g
ƒ}tj||d ddS)Nrr r9rrFr,éé    rEé ééTr)rr?rArrr©rÚleftÚrightr r6r!r!r"Útest_union_same_step_misaligned*s
 
z4TestRangeIndexSetOps.test_union_same_step_misalignedcCsötjtddƒdd}| |¡}tjtdƒdd}tj||dd| | d¡¡}tj|| d¡dd| |dd    …¡}tj||d    d…dd| |d
d…¡}tj||dd
…dd|ddd … |d
d…¡}tj||dd
…dd|ddd …j|d
d…d d }tj||dd
…ddd …dd|ddd … |d
d…ddd …¡}tj||dd
…dd|ddd …j|d
d…ddd …d d }tj||dd
…ddd …dd| |dd…¡}tdddddgdd}tj||dddS)Nrr.rr1rTrÚbarrNrMr-Fr$r r*érVrW)rÚ
from_ranger?Ú
differencerrr&r©rÚobjr r6r!r!r"Útest_difference3s*
 "&*"z$TestRangeIndexSetOps.test_differencecCs°ttdƒƒddd…}ttddƒƒ}| |¡}ttdƒƒ}tj||dd|j|dd}|ddd…}tj||ddtdd    ƒ}|j|dd}|ddd…}tj||dddS)
Nr9r-rNTrFr$r.rE)rr?rbrr)rÚidxr5r r6r!r!r"Útest_difference_sortWs
 
z)TestRangeIndexSetOps.test_difference_sortcCsôtjtddƒdd}| |ddd…¡}|ddd…}tj||dd|ddd…j|ddd…d    d
}tj||ddd…dd| |ddd…¡}|ddd…}tj||dd|ddd…j|ddd…d    d
}tj||ddd…dddS) Nrr.rr1r Trr-Fr$)rrar?rbrrrcr!r!r"Útest_difference_mismatched_stepks""z4TestRangeIndexSetOps.test_difference_mismatched_stepcCsXttdƒƒ}ttddƒƒ}| |¡}tdddƒ}| ¡ddgksDt‚tj||dddS)Nr9rrNrTr)rr?rbÚtolistÚAssertionErrorrrr[r!r!r"Ú4test_difference_interior_overlap_endpoints_preserved|s  
 zITestRangeIndexSetOps.test_difference_interior_overlap_endpoints_preservedcCsVtdddƒ}tdddƒ}| |¡}tdddƒ}| ¡ddgksBt‚tj||d    d
dS) Niøÿÿÿr r`rXi÷ÿÿÿrMr-r*Tr)rrbrirjrrr[r!r!r"Ú4test_difference_endpoints_overlap_interior_preserved…s   
 zITestRangeIndexSetOps.test_difference_endpoints_overlap_interior_preservedc
Cs*ttdƒƒ}|dd…}| |¡}tddddddd    d
d g    ƒ}tj||d d |ddd…}| |¡}tddddd    d
gƒ}tj||d d ttdƒƒ}|ddd…}| |¡}tdddd    d gttddƒƒƒ}tj||d d |ddd…}| |¡}tddddd
dgttddƒƒƒ}tj||d d dS)Nr.rNr9rrr r,r*r`rVrWTrr rD)rr?rbrrÚlist)rrfr5r r6rdr!r!r"Ú'test_difference_interior_non_preservingŽs$  
 
 
 
"z<TestRangeIndexSetOps.test_difference_interior_non_preservingcCstjtddƒdd}| |¡}tjtdƒdd}t ||¡| | d¡¡}t || d¡¡|dd… |dd…¡}tddd    d
gdd}tj||d d t tdd ƒ¡}| |¡}t tdd ƒ¡}t ||¡| |dd…¡}tdddddddd    d
ddddg ƒ}tj||d d dS)Nrr.rr1rr_r/r rVrWTrérNr9r,r*r`rDrErXé)rrar?Úsymmetric_differencerrr&r)rr\r r6r]r!r!r"Útest_symmetric_difference©s 
 
 "z.TestRangeIndexSetOps.test_symmetric_difference)Ú__name__Ú
__module__Ú __qualname__ÚpytestÚmarkZ parametrizer#r(r8r:rBrrrmr?rr rUr^rergrhrkrlrnrrr!r!r!r"r    s
 ? 
 
 
 
ü
 
 
 
ü
 
 
 
ü
 
 
 
ü
 
 
 
ü
 
 
"ü
 
 
"ü
 
 
"ü
 
 
"ü
 
 
 
ü
 
 
ü
 
 
ü
 
 
ü
 
 
 
ü
 
 
ü
 
 
 
ü
 
 
 
ü
 
 
 ü
 
ü
 
 
ü   üü€ÿ    €ö
    $        r    cCsFt|tƒsBt|ƒdkrB|dd…|dd…}||dk ¡rBt‚dS)zp
    Check that we either have a RangeIndex or that this index *cannot*
    be represented as a RangeIndex.
    rNr-r)rOrÚlenÚallrj)rZdiffr!r!r"Ú assert_range_or_not_is_rangelikeÄsrzrCr c Cs´t|dkƒt|dkƒt|||ƒ}t|||ƒ}|j|dd}t|ƒt| ¡ƒ}    t| ¡ƒ}
|    j|
dd} tj|| dd|j|dd}t|ƒ|    j|
dd} tj|| dddS)Nrr$r+rF)rrrbrzrZto_numpyrr) Zstart1Zstop1Zstep1Zstart2Zstop2Zstep2r\r]r Z
left_int64Z right_int64Zaltr!r!r"Útest_range_differenceÎs      r{)rrZ
hypothesisrrrÚstÚnumpyrrvZpandasrrZpandas._testingZ_testingrr    rzZintegersr{r!r!r!r"Ú<module>s& 2
 
 
 
 
 
 
ú