a
    hS                     @   s   d Z ddlm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 dd	lmZ dd
lmZ dd Zdd ZdS )z6
Testing for the base module (sklearn.ensemble.base).
    )OrderedDictN)	load_iris)LinearDiscriminantAnalysis)BaggingClassifier)_set_random_states)SelectFromModel)
Perceptron)Pipelinec                  C   s  t td ddd} t }| |j|j g | _|   tj	
d}| j|d | j|d | jdd dt| ksvJ dt| jksJ t| d tsJ | d jd u sJ t| d jtsJ t| d jtsJ | d j| d jksJ t t tdd}||j|j d S )	Nrandom_state   )	estimatorZn_estimatorsF)appendr         )r   r   r   fitdatatargetZestimators_Z_make_estimatornprandomZRandomStatelen
isinstancer   intZint32)ZensembleZirisr   Znp_int_ensemble r   \/var/www/html/assistant/venv/lib/python3.9/site-packages/sklearn/ensemble/tests/test_base.py	test_base   s,    
r   c                  C   sp  t t dd td d} | jd u s&J t | d  t| jts@J t | d t| jtsZJ td d}t |d | j|jks~J dd }t| }t |d t|jd d jjtsJ t|jd d jtsJ |	 d |	 d	 ksJ G d
d dt}G dd dt}||fD ]V}|| }t |d |	 d |	 d ksJJ |	 d	 |	 d	 ksJ qd S )N   r
   r   c                   S   s    dt td dfdtd dfgS )Nselr
   Zclf)r   r   r   r   r   r   
make_stepsG   s    z*test_set_random_states.<locals>.make_stepsr   r   Zsel__estimator__random_stateZclf__random_statec                   @   s   e Zd Zdd ZdS )z2test_set_random_states.<locals>.AlphaParamPipelinec                 _   s(   t j| g|R i | }tt|S )Nr	   
get_paramsitemsr   sortedselfargskwargsparamsr   r   r   r    Z   s    z=test_set_random_states.<locals>.AlphaParamPipeline.get_paramsN__name__
__module____qualname__r    r   r   r   r   AlphaParamPipelineY   s   r,   c                   @   s   e Zd Zdd ZdS )z0test_set_random_states.<locals>.RevParamPipelinec                 _   s,   t j| g|R i | }tt|ddS )NT)reverser   r#   r   r   r   r    _   s    z;test_set_random_states.<locals>.RevParamPipeline.get_paramsNr(   r   r   r   r   RevParamPipeline^   s   r.   )
r   r   r   r   r   r   r	   Zstepsr   r    )Zclf1Zclf2r   Zest1r,   r.   clsZest2r   r   r   test_set_random_states4   s@    














r0   )__doc__collectionsr   numpyr   Zsklearn.datasetsr   Zsklearn.discriminant_analysisr   Zsklearn.ensembler   Zsklearn.ensemble._baser   Zsklearn.feature_selectionr   Zsklearn.linear_modelr   Zsklearn.pipeliner	   r   r0   r   r   r   r   <module>   s   