zmc
2023-08-08 e792e9a60d958b93aef96050644f369feb25d61b
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
U
­ý°dÁ+ã@sœddlZddlZddlmZddlmZmZddl    m
Z Gdd„dƒZ ej  dddg¡d    d
„ƒZd d „Zd d„Zdd„Zdd„Zdd„Zdd„Zdd„ZdS)éN)Újoin)Ú
inner_joinÚleft_outer_joinc@sDeZdZej ddddddg¡dd„ƒZd    d
„Zd d „Zd d„Z    dS)Ú TestIndexerÚdtypeÚint32Úint64Úfloat32Úfloat64Úobjectc
Cs˜tj}tjd|d}tjdd|d}tjg|d}|||ƒ\}}}t|tjƒsRt‚t|tjƒsbt‚t|tjƒsrt‚t     |tjd|d¡tjdddddgtj
d}    t     ||    ¡tjdddddgtj
d}    t     ||    ¡|||ƒ\}}}t     ||¡tjdddgtj
d}    t     ||    ¡tjdddgtj
d}    t     ||    ¡|||ƒ\}}}t     ||¡tjdddgtj
d}    t     ||    ¡tjdddgtj
d}    t     ||    ¡dS)Né©réérééÿÿÿÿ) ÚlibjoinÚouter_join_indexerÚnpÚarangeÚarrayÚ
isinstanceZndarrayÚAssertionErrorÚtmÚassert_numpy_array_equalÚintp)
ÚselfrZindexerÚleftÚrightÚemptyÚresultZlindexerZrindexerÚexp©r"úRd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/libs/test_join.pyÚtest_outer_join_indexers2       z#TestIndexer.test_outer_join_indexerc
Cs$tjdddddddddddg tjd}tjdddddddgtjd}d}t|||ƒ\}}|jdd    }|jdd    }t ddddddddddddd
d
d d d d d dg¡}t ddddddddddddddddddddg¡}    | |¡}d||dk<| |    ¡}d||    dk<tj||ddtj||dddS)Nrrrr r érÚ    mergesort©Úkindéééé    é
rF)Z check_dtype©rrrrÚargsortÚtakerr©
rrrÚ    max_groupÚlsÚrsÚexp_lsÚexp_rsÚexp_liÚexp_rir"r"r#Útest_cython_left_outer_join0s &  2*ÿ
 
 z'TestIndexer.test_cython_left_outer_joinc
Cstjdddddddddddg tjd}tjdddddddgtjd}d}t|||ƒ\}}|jdd    }|jdd    }t ddddddddddddd
d d d
d d d g¡}t ddddddddddddddddddd
g¡}    | |¡}d ||d k<| |    ¡}d ||    d k<t ||¡t ||¡dS©Nrrrr r r%rr&r'r)r*r+rr.)
rrrr2r4r3r5r6r7r8r"r"r#Útest_cython_right_outer_joinHsF&  ìÿ0
 
  z(TestIndexer.test_cython_right_outer_joinc
Cstjdddddddddddg tjd}tjddddddddgtjd}d}t|||ƒ\}}|jdd    }|jdd    }t ddddddddddddd
d
d d d d g¡}t ddddddddddddddddddg¡}    | |¡}d ||d k<| |    ¡}d ||    d k<t ||¡t ||¡dSr:)rrrrr/r0rrr1r"r"r#Útest_cython_inner_joinvs&   ..
 
  z"TestIndexer.test_cython_inner_joinN)
Ú__name__Ú
__module__Ú __qualname__ÚpytestÚmarkÚ parametrizer$r9r;r<r"r"r"r#r s ÿ
.rÚreadonlyTFcCs†tjdddddgtjd}tjdddddgtjd}|rP|jdd|jddt ||¡}tjdddddgtjd}t ||¡dS)    Nrrr r%rr F)Úwrite)    rrrZsetflagsrZleft_join_indexer_uniquerrr)rCÚaÚbr Úexpectedr"r"r#Útest_left_join_indexer_uniques   rHceCsdtjddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddgdtjd}tjddgtjd}d}tj|||dd\}}tjt|ƒtjd}tjt|ƒtjd }d||dk<d||dk<t     ||¡t     ||¡dS)    Nrrrr r r%F)Úsort)
rrrrrrÚlenZonesrr)rrZ
max_groupsÚlidxÚridxÚexp_lidxÚexp_ridxr"r"r#Útest_left_outer_join_bug›sâœf™j   rOcCs.tjdddddgtjd}tjddddd    gtjd}t ||¡\}}}tjddgtjd}t ||¡tjddgtjd}tjddgtjd}t ||¡t ||¡tjdgtjd}tjdgtjd}t ||¡\}}}t |tjdgtjd¡t |tjdgtjd¡t |tjdgtjd¡dS)
Nrrr r%rr rr*r,)    rrrrÚinner_join_indexerrÚassert_almost_equalrr©rErFÚindexÚaresÚbresZ    index_expÚaexpÚbexpr"r"r#Útest_inner_join_indexers   rXc    CsRtjdddddgtjd}tjddddd    gtjd}t ||¡\}}}tjdddddddd    gtjd}t ||¡tjd
dddddd
d
gtjd}tjdd
d
dd
dddgtjd}t ||¡t ||¡tjdgtjd}tjdgtjd}t ||¡\}}}t |tjdgtjd¡t |tjdgtjd¡t |tjdgtjd¡dS© Nrrr r%rr rr*r,r)    rrrrrrrQrrrRr"r"r#r$,s      r$cCs&tjdddddgtjd}tjddddd    gtjd}t ||¡\}}}t ||¡tjdddddgtjd}tjd
d
dd
dgtjd}t ||¡t ||¡tjdgtjd}tjdgtjd}t ||¡\}}}t |tjdgtjd¡t |tjdgtjd¡t |tjdgtjd¡dSrY)    rrrrÚleft_join_indexerrrQrr)rErFrSrTrUrVrWr"r"r#Útest_left_join_indexerCs   r[cCsÀtjddddgtjd}tjdddddgtjd}t ||¡\}}}tjddddddgtjd}t ||¡tjdddddd    gtjd}t ||¡tjddddd
d
gtjd}t ||¡dS© Nrrrr r*r,rr r%r)rrrrrZrrQr©ÚidxZidx2ÚresrKrLZexp_resrMrNr"r"r#Útest_left_join_indexer2Ys  r`cCsÀtjddddgtjd}tjdddddgtjd}t ||¡\}}}tjddddddgtjd}t ||¡tjdddddd    gtjd}t ||¡tjddddd
d
gtjd}t ||¡dSr\)rrrrrrrQrr]r"r"r#Útest_outer_join_indexer2is  racCs´tjddddgtjd}tjdddddgtjd}t ||¡\}}}tjddddgtjd}t ||¡tjddddgtjd}t ||¡tjddddgtjd}t ||¡dS)    Nrrrr r*r,rr )rrrrrPrrQrr]r"r"r#Útest_inner_join_indexer2ys  rb)Únumpyrr@Z pandas._libsrrZpandas._libs.joinrrZpandas._testingZ_testingrrrArBrHrOrXr$r[r`rarbr"r"r"r#Ú<module>s  
z