
    0Ph                        d dl mZ d dlZd dlZd dlmZ d dlmZ d dl	m
Z
mZmZmZ d dlmZ d dlmZ  e            Zej                            ej                  Zej                            ej                  Z ej        ej        ej                  Zej                            ej                  Zej                            ej                  Z ej        ej        ej                  Zej        ej        gZ d	 Z!d
 Z"d Z#d Z$d Z%d Z&ej'        (                    de          ej'        (                    d e$             e%            z             d                         Z)ej'        (                    dd  ee e          D                       d             Z*ej'        (                    d e&                      d             Z+d Z,dS )    )productN)assert_array_equal)	load_iris)ArrayDataset32ArrayDataset64CSRDataset32CSRDataset64)assert_allclose)CSR_CONTAINERS)dtypec                    |                                   |                                  |                    | j                  }| j        d         |j        d         k    sJ | j        d         |j        d         k    sJ t	          | j        |j                   t	          | j        |j                   t	          | j        |j                   d S )Nr      )eliminate_zerosastyper   shaper   dataindicesindptr)currentexpecteds     d/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/sklearn/utils/tests/test_seq_dataset.pyassert_csr_equal_valuesr       s    w}--H=x~a00000=x~a00000w|X]333w(8999w~x77777    c                     | t           j        k    r"t          t          t          t
          d          S t          t          t          t          d          S N*   seed)
npfloat32r   X32y32sample_weight32r   X64y64sample_weight64)float_dtypes    r   _make_dense_datasetr(   +   s=    bj  c3bAAAA#sO"====r   c                     |t           j        k    r t          t          t          t
          f\  }}}}nt          t          t          t          f\  }}}} | |          } ||j
        |j        |j        ||d          S r   )r   r    r!   r"   r#   r   r$   r%   r&   r	   r   r   r   )csr_containerr'   Xysample_weightcsr_datasets         r   _make_sparse_datasetr/   1   sq    bj  +._l+R(1m[[+._l+R(1m[aA;qvqxA}2NNNNr   c                  $    d t           D             S )Nc                 ,    g | ]}t          |          S  )r(   ).0r'   s     r   
<listcomp>z(_make_dense_datasets.<locals>.<listcomp>;   s!    III,,IIIr   )floatingr2   r   r   _make_dense_datasetsr6   :   s    IIIIIIr   c                  J    d t          t          t                    D             S )Nc                 4    g | ]\  }}t          ||          S r2   )r/   )r3   r*   r'   s      r   r4   z)_make_sparse_datasets.<locals>.<listcomp>?   s6       &M; 	]K88  r   )r   r   r5   r2   r   r   _make_sparse_datasetsr9   >   s-     *1.(*K*K   r   c                       t                      t                      z     fdt          dt                     d          D             S )Nc              3   2   K   | ]}||d z            V  dS )   Nr2   )r3   idxall_datasetss     r   	<genexpr>z-_make_fused_types_datasets.<locals>.<genexpr>H   s0      RRCLsQw'RRRRRRr   r   r<   )r6   r9   rangelen)r>   s   @r   _make_fused_types_datasetsrB   E   sH    ')),A,C,CCLRRRR5C<M<Mq3Q3QRRRRr   r*   datasetc                 "   d} |t                     }t          |          D ]}|                                 \  }}}} ||dt           j        d         f          }	t	          |	||g                    |t
          |         k    sJ |t          |         k    sJ |                                 \  }}}} ||dt           j        d         f          }	t	          |	||g                    |t
          |         k    sJ |t          |         k    sJ d S )N   r   )r   )r$   r@   _next_pyr   r   r%   r&   
_random_py)
rC   r*   NUMBER_OF_RUNSX_csr64_xi_yiswir=   xis
             r    test_seq_dataset_basic_iterationrO   K   s*    NmC  G>"" + +#,,..Rc]3q#)A,&7888GSEN333SX~~~~oc***** $..00Rc]3q#)A,&7888GSEN333SX~~~~oc******+ +r   zdense_dataset,sparse_datasetc                 R    g | ]$\  }}t          |          t          ||          f%S r2   )r(   r/   )r3   r'   r*   s      r   r4   r4   d   sH       
 'K  ,, <<	
  r   c                    t          d          D ]D}|                                 \  }}}}|                                \  }}}}||k    sJ ||k    sJ EdD ]D}|                                 \  }}}}|                                \  }}}}||k    sJ ||k    sJ Ed}|                     |           |                    |           g d}g d}t	          ||          D ]\  }}	|                                 \  }}}}|                                \  }}}}||k    sJ ||k    sJ |                                 \  }}}}|                                \  }}}}||	k    sJ ||	k    sJ d S )NrE   )   2   	      :   M   )?   [      W      )   }   8   y      )r@   rF   rG   _shuffle_pyzip)
dense_datasetsparse_datasetirJ   idx1idx2r   idx_nextidx_shufflejs
             r   test_seq_dataset_shufflerl   b   s    1XX  %..001a&//111aqyyyyqyyyyy!  %00221a&11331aqyyyyqyyyyyDd###t$$$$$$H***KHk** 	 	1%..001a&//111aqyyyyqyyyy%00221a&11331aqyyyyqyyyyy	 	r   zdataset_32,dataset_64c                 F   d}t          |          D ]}|                                 \  \  }}}}}}|                                \  \  }}}}}}|j        t          j        k    sJ |j        t          j        k    sJ t          ||d           t          ||d           d S )NrE   gh㈵>)rtol)r@   rF   r   r   r    float64r
   )
dataset_32
dataset_64rH   rJ   	xi_data32yi32	xi_data64yi64s           r   test_fused_types_consistencyrv      s    N>"" 	/ 	/(2(;(;(=(=%Aq4A(2(;(;(=(=%Aq4A"*,,,,"*,,,,	948888d.....	/ 	/r   c            
      :   t          j        t          d          5  t          t          t
          t          d          f d d d            n# 1 swxY w Y   t          j        t          d          5  t          t          t          t          d          f d d d            n# 1 swxY w Y   t          D ]}  | t                    } | t                    }t          j        t          d          5  t          |j        |j        |j        t
          t          d          f d d d            n# 1 swxY w Y   t          j        t          d          5  t!          |j        |j        |j        t          t          d          f d d d            n# 1 swxY w Y   d S )NzBuffer dtype mismatch)matchr   r   )pytestraises
ValueErrorr   r!   r"   r#   r   r$   r%   r&   r   r	   r   r   r   r   )r*   X_csr32rI   s      r    test_buffer_dtype_mismatch_errorr}      s   	z)@	A	A	A < <sCr:::;;< < < < < < < < < < < < < < < 
z)@	A	A	A < <sCr:::;;< < < < < < < < < < < < < < < (  -$$-$$]:-DEEE 	 	    	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 ]:-DEEE 	 	    	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 sG   $AAA2$B""B&)B&10D--D1	4D1	0FF	F	)-	itertoolsr   numpyr   ry   numpy.testingr   sklearn.datasetsr   sklearn.utils._seq_datasetr   r   r   r	   sklearn.utils._testingr
   sklearn.utils.fixesr   irisr   r   ro   r$   targetr%   arangesizer&   r    r!   r"   r#   r5   r   r(   r/   r6   r9   rB   markparametrizerO   rl   rv   r}   r2   r   r   <module>r      s              , , , , , , & & & & & &            3 2 2 2 2 2 . . . . . .y{{
irz""
k$$")CHBJ777
irz""
k$$")CHBJ777J
#8 8 8> > >O O OJ J J  S S S .99$8$8$:$:=R=R=T=T$TUU+ + VU :9+* " 
 +2'(N*K*K  	 	 	 	@ 02L2L2N2NOO/ / PO/    r   