
     h`                        d Z ddlZddlZddlmZ ddlmZ ddlm	Z	 ddl
mZ ddl
mZmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ d Zd Zd Zej                            d ej                     ej                     ej                     ej                      ej!        d e            fd e            fg           ej"        d e            fd e            fg          g          d             Z#dS )z6
Testing for the base module (sklearn.ensemble.base).
    N)	load_iris)BaggingClassifier)_set_random_states)
Perceptron)RidgeLogisticRegression)OrderedDict)LinearDiscriminantAnalysis)Pipeline)SelectFromModel)ensemblec                  ~   t          t          d           d          } t                      } | j        |j        |j                   g | _         | j                     t          j	        
                    d          } | j        |            | j        |            | j        d           dt          |           k    sJ dt          | j                  k    sJ t          | d         t                    sJ | d         j        J t          | d         j        t                    sJ t          | d         j        t                    sJ | d         j        | d         j        k    sJ t          t                      t          j        d                    }|                    |j        |j                   d S )	Nrandom_state   )	estimatorn_estimatorsF)appendr         )r   r   r   fitdatatargetestimators__make_estimatornprandomRandomStatelen
isinstancer   intint32)r   irisr   np_int_ensembles       \/var/www/html/Sam_Eipo/venv/lib/python3.11/site-packages/sklearn/ensemble/tests/test_base.py	test_baser&      s    $///a  H ;;DHLDK(((HH9((++LH,7777H,7777HE****HH())))))hqk:.....A;#+++hqk.44444hqk.44444A;#x{'?????',,RXa[[  O 	4;/////    c                     t          t                      d           t          d           } | j        J t          | d            t	          | j        t
                    sJ t          | d           t	          | j        t
                    sJ t          d           }t          |d           | j        |j        k    sJ d }t           |                      }t          |d           t	          |j        d         d         j        j        t
                    sJ t	          |j        d         d         j        t
                    sJ |	                                d         |	                                d         k    sJ  G d	 d
t                    } G d dt                    }||fD ]} | |                      }t          |d           |	                                d         |	                                d         k    sJ |	                                d         |	                                d         k    sJ d S )N   r   r   c                  d    dt          t          d                     fdt          d           fgS )Nselr   clf)r   r    r'   r%   
make_stepsz*test_set_random_states.<locals>.make_stepsI   s:    OJD$A$A$ABBCJD1112
 	
r'   r   r   sel__estimator__random_stateclf__random_statec                       e Zd Zd ZdS )2test_set_random_states.<locals>.AlphaParamPipelinec                     t          j        | g|R i |                                }t          t	          |                    S )Nr   
get_paramsitemsr	   sortedselfargskwargsparamss       r%   r5   z=test_set_random_states.<locals>.AlphaParamPipeline.get_params\   sB    (??????EEGGFvf~~...r'   N__name__
__module____qualname__r5   r-   r'   r%   AlphaParamPipeliner2   [   s#        	/ 	/ 	/ 	/ 	/r'   rA   c                       e Zd Zd ZdS )0test_set_random_states.<locals>.RevParamPipelinec                     t          j        | g|R i |                                }t          t	          |d                    S )NT)reverser4   r8   s       r%   r5   z;test_set_random_states.<locals>.RevParamPipeline.get_paramsa   sI    (??????EEGGFvfd;;;<<<r'   Nr=   r-   r'   r%   RevParamPipelinerC   `   s#        	= 	= 	= 	= 	=r'   rF   )
r   r
   r   r   r    r!   r   stepsr   r5   )clf1clf2r.   est1rA   rF   clsest2s           r%   test_set_random_statesrM   6   s   133"EEEE4(((D$$$tT"""d'----- tQd'-----4(((DtQ 11111
 
 
 JJLL!!DtQdjmA&0=sCCCCCdjmA&3S9999989??01	2 	2 	2 	2/ / / / /X / / /
= = = = =8 = = =
 #$45 

 

s::<<  4###OO<=  !?@A A A A OO12  !456 6 6 6 6

 

r'   c                  P   t          j        ddgddgg          } t          j        ddg          }t          t                      t                                }d}t	          j        t          |          5  |                    | |           d d d            d S # 1 swxY w Y   d S )	Nr   r   r      r   )r   base_estimatorzEBoth `estimator` and `base_estimator` were set. Only set `estimator`.)match)r   arrayr   r   pytestraises
ValueErrorr   )Xymodelerr_msgs       r%   #test_validate_estimator_value_errorrZ   s   s    
1a&1a&!""A
!QA
Z\\RRREUG	z	1	1	1  		!Q                 s   7BB"BrX   abc                 j    dgdgg}ddg}|                      ||           t          | d          rJ d S )Nr   r   r   
estimator_)r   hasattr)rX   rV   rW   s      r%   test_estimator_attribute_errorr`   }   sG     qc
A	
AA	IIaOOOul+++++++r'   )$__doc__numpyr   rS   sklearn.datasetsr   sklearn.ensembler   sklearn.ensemble._baser   sklearn.linear_modelr   r   r   collectionsr	   sklearn.discriminant_analysisr
   sklearn.pipeliner   sklearn.feature_selectionr   sklearnr   r&   rM   rZ   markparametrizeGradientBoostingClassifierGradientBoostingRegressorHistGradientBoostingClassifierHistGradientBoostingRegressorVotingClassifierVotingRegressorr`   r-   r'   r%   <module>rt      s         & & & & & & . . . . . . 5 5 5 5 5 5 + + + + + + : : : : : : : : # # # # # # D D D D D D % % % % % % 5 5 5 5 5 5      0 0 0>9
 9
 9
z   ++--**,,//11..00!!%%''(30B0B0D0D*EF	
 	
 	! 3.3.!ABB	 , , , , ,r'   