
    _nd/                     6   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          Z ej        ej        ej                  Zej                            ej                  Zej                            ej                  Z ej        e          Z  ej        ej        ej                  Z!d Z"d Z#d	 Z$d
 Z%d Z&ej'        (                    de#e$e%e&g          d             Z)ej'        (                    de#e%fe$e&fg          d             Z*ej'        (                    de#e$fe%e&fg          d             Z+d Z,dS )    N)assert_array_equal)ArrayDataset32ArrayDataset64CSRDataset32CSRDataset64)	load_iris)assert_allclose)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     Dlib/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                  F    t          t          t          t          d          S N*   seed)r   X32y32sample_weight32 r   r   make_dense_dataset_32r!   +       #sO"====r   c                  F    t          t          t          t          d          S r   )r   X64y64sample_weight64r    r   r   make_dense_dataset_64r'   /   r"   r   c                  |    t          t          j        t          j        t          j        t
          t          d          S r   )r   X_csr32r   r   r   r   r   r    r   r   make_sparse_dataset_32r*   3   -    gngosORT   r   c                  |    t          t          j        t          j        t          j        t
          t          d          S r   )r   X_csr64r   r   r   r%   r&   r    r   r   make_sparse_dataset_64r.   9   r+   r   dataset_constructorc                 N   d} |             }t          |          D ]}|                                \  }}}}t          j        |dt          j        d         f          }t          |t          |                    |t          |         k    sJ |t          |         k    sJ |
                                \  }}}}t          j        |dt          j        d         f          }t          |t          |                    |t          |         k    sJ |t          |         k    sJ 	d S )N   r   )r   )range_next_pysp
csr_matrixr$   r   r   r-   r%   r&   
_random_py)	r/   NUMBER_OF_RUNSdataset_xi_yiswiidxxis	            r    test_seq_dataset_basic_iterationr?   ?   s%    N!!##G>"" + +#,,..Rc]CCIaL(9:::GCL111SX~~~~oc***** $..00Rc]CCIaL(9:::GCL111SX~~~~oc******+ +r   z&make_dense_dataset,make_sparse_datasetc                      |              |            }}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 )Nr1   )   2   	      :   M   )?   [      W      )   }   8   y      )r2   r3   r6   _shuffle_pyzip)make_dense_datasetmake_sparse_datasetdense_datasetsparse_datasetir9   idx1idx2r   idx_nextidx_shufflejs               r   test_seq_dataset_shuffler]   ]   s    %7$6$8$8:M:M:O:O>M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make_dataset_32,make_dataset_64c                 n    |              |            }}d}t          |          D ]}|                                \  \  }}}}}}|                                \  \  }}}}	}}|j        t          j        k    sJ |j        t          j        k    sJ t          ||d           t          |	|d           d S )Nr1   gh㈵>)rtol)r2   r3   r
   npfloat32float64r	   )
make_dataset_32make_dataset_64
dataset_32
dataset_64r7   r9   	xi_data32yi32	xi_data64yi64s
             r   test_fused_types_consistencyrk      s     -_..0A0A
J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          j        t          d          5  t          t          j        t          j        t          j        t
          t          d          f d d d            n# 1 swxY w Y   t          j        t          d          5  t!          t"          j        t"          j        t"          j        t          t          d          f d d d            d S # 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-   r    r   r    test_buffer_dtype_mismatch_errorrq      sW   	z)@	A	A	A < <sCr:::;;< < < < < < < < < < < < < < < 
z)@	A	A	A < <sCr:::;;< < < < < < < < < < < < < < < 
z)@	A	A	A  L'.'/3VX	
 	
 	
 	 	              
 
z)@	A	A	A  L'.'/3VX	
 	
 	
 	 	                 sG   $AAA2$B""B&)B&?DDD9?FF	F	)-numpyr`   rn   scipy.sparsesparser4   numpy.testingr   sklearn.utils._seq_datasetr   r   r   r   sklearn.datasetsr   sklearn.utils._testingr	   irisr   r   rb   r$   targetr%   r5   r-   arangesizer&   ra   r   r   r)   r   r   r!   r'   r*   r.   markparametrizer?   r]   rk   rq   r    r   r   <module>r      s              , , , , , ,            ' & & & & & 2 2 2 2 2 2y{{
irz""
k$$
"-

")CHBJ777
irz""
k$$
"-

")CHBJ7778 8 8> > >> > >     	 + + +* ,	 67	 67   B %	 56	!78 / / /    r   