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
U
¬ý°dèã@sÄddlmZddlmZmZmZddlmZerTddlm    Z    ddl
m Z ddl m Z Gdd„deƒZd    d    d
d œd d „Zd    d    d    d œdd„Zdddœdd„Zddddddœdd„Zd    d    dd œdd„ZdS)é)Ú annotations)Ú TYPE_CHECKINGÚIteratorÚ
NamedTuple)Ú    ArrayLike)ÚBlockPlacement)ÚBlock)Ú BlockManagerc@s>eZdZUded<ded<ded<ded<ded<d    ed
<d S) Ú BlockPairInforÚlvalsÚrvalsrÚlocsÚboolÚleft_eaÚright_earÚrblkN)Ú__name__Ú
__module__Ú __qualname__Ú__annotations__©rrúPd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/core/internals/ops.pyr
s
r
r    zIterator[BlockPairInfo])ÚleftÚrightÚreturnc     csv|jD]j}|j}|j}|jdk}|j|jdd}|D]:}|jjdk}t||||ƒ\}    }
t|    |
||||ƒ} | Vq4qdS)NéT)Z
only_slice)ÚblocksÚmgr_locsÚvaluesÚndimZ_slice_take_blocks_ax0ÚindexerÚ_get_same_shape_valuesr
) rrZblkr Zblk_valsrZrblksrrr r ÚinforrrÚ_iter_block_pairss
 
 r#c Cs‚g}t||ƒD]V\}}}}}}    |||ƒ}
|rF|sFt|
dƒrF|
 dd¡}
|     |
¡} t| |ƒ| | ¡qt|ƒt|ƒ|jdd} | S)NÚreshaperéÿÿÿÿF)ÚaxesZverify_integrity)    r#Úhasattrr$Z_split_op_resultÚ_reset_block_mgr_locsÚextendÚtypeÚtupler&) rrZarray_opZres_blksr r r rrrZ
res_valuesÚnbsZnew_mgrrrrÚoperate_blockwise7s
 
 
     r-z list[Block]ÚNone)r,rcCs |D]}||jj}||_qdS)zA
    Reset mgr_locs to correspond to our original DataFrame.
    N)rr )r,r ÚnbZnblocsrrrr(Ys r(rrztuple[ArrayLike, ArrayLike])ÚlblkrrrrcCsð|j}|j}|jjst|jƒ‚|sX|sX||jjdd…f}|j|jksèt|j|jfƒ‚n|r~|r~|j|jksèt|j|jfƒ‚nj|rÀ||jjdd…f}|jddks®t|jƒ‚|ddd…f}n(|jddksØt|jƒ‚|ddd…f}||fS)zH
    Slice lblk.values to align with rblk.  Squeeze if we have EAs.
    Nrr)rrZ is_slice_likeÚAssertionErrorr Úshape)r0rrrr r rrrr!esr!cCs,t||ƒD]}||j|jƒ}|s
dSq
dS)z$
    Blockwise `all` reduction.
    FT)r#r r )rrÚopr"ÚresrrrÚ blockwise_all‹s
r5N)Ú
__future__rÚtypingrrrZpandas._typingrZpandas._libs.internalsrZpandas.core.internals.blocksrZpandas.core.internals.managersr    r
r#r-r(r!r5rrrrÚ<module>s         " &