
    -i#                     ~   S SK rS SKrS SKJrJrJr  S SKJrJ	r	J
r
Jr  S SKJrJrJrJrJrJr  S SKJr  S SKJrJr  S SKJr  S SKJrJrJrJr  \	" S	S
9u  rr \" S	S
9u  r!r"\RF                  RI                  S/ \
" SS9Q\" S\" 5       4S\" 5       4S\" SSS94/SS9P7/ \
" SS9Q\" S\" 5       4S\" 5       4S\" SSS94/S9P7/ \" SS9Q\" S\" 5       4S\" 5       4S\" SSS94/SS9P7/ \" SS9Q\" S\" 5       4S\" 5       4S\" SSS94/S9P7// SQS9S 5       r%\RF                  RI                  S\\\/5      S 5       r&\RF                  RI                  S/ \
" SS9Q\P7/ \
" SS9Q\P7/ \" SS9Q\P7/ \" SS9Q\P7/5      S 5       r'\RF                  RI                  S/ \
" SS9Q\" S\" 5       4/S9P7/ \
" SS9Q\" S\" 5       4/S9P7/ \" SS9Q\" S\" 5       4/S9P7/ \" SS9Q\" S\" 5       4/S9P7// SQS9S 5       r(\RF                  RI                  S\\\\ 4\\\!\"4\\\\ 4\\\!\"4/5      S  5       r)g)!    N)ClassifierMixincloneis_classifier)load_diabetes	load_irismake_classificationmake_regression)RandomForestClassifierRandomForestRegressorStackingClassifierStackingRegressorVotingClassifierVotingRegressor)SimpleImputer)LinearRegressionLogisticRegression)make_pipeline)SVCSVR	LinearSVC	LinearSVRT)
return_X_yzX, y, estimator
   	n_sampleslrsvmrf      )n_estimators	max_depth   )
estimatorscvr$   )zstacking-classifierzvoting-classifierzstacking-regressorzvoting-regressor)idsc                    SUR                   ;   d   eUR                   R                  UR                  S   S   L d   eUR                   R                  UR                   S   L d   eUR                  X5        [	        UR                   5      S:X  d   e[	        UR
                  5      S:X  d   e[        [        UR
                  R                  5       5      5      [        / SQ5      :X  d   e[        U5      n[        U5      (       a
  [        5       O	[        5       nUR                  US9R                  X5        [        US5      (       a   eUR                   R                  R!                  5       UR                   R                  R!                  5       :X  d   eUR                   R"                  R!                  5       UR                   R"                  R!                  5       :X  d   e[        U5      nUR                  SS9  UR                  X5        [	        UR                   5      S:X  d   eUR                   R                  S:X  d   e[	        UR
                  5      S:X  d   e[        [        UR
                  R                  5       5      5      [        / SQ5      :X  d   eUR
                   H3  n[%        U['        UR                   R                  5      5      (       d  M3   e   UR                  SS9  UR                  S	S
9  UR!                  5       S   UR!                  5       S   R!                  5       S   :X  d   eUR!                  5       S   UR!                  5       S   R!                  5       S   :X  d   eg )Nr      r    )r   r   r   )r   dropg      $@)svm__Cr   )rf__max_depthr+   Cr,   r   r"   )named_estimatorsr   r$   fitlennamed_estimators_sortedlistkeysr   r   r   r   
set_paramshasattrr   
get_paramsr   
isinstancetype)Xy	estimatorestimator_new_paramssvm_estimatorestimator_droppedsub_ests          U/var/www/html/venv/lib/python3.13/site-packages/sklearn/ensemble/tests/test_common.py/test_ensemble_heterogeneous_estimators_behaviorrB      s=   v I.....%%))Y-A-A!-DQ-GGGG%%))Y-G-G-NNNN MM!y))*a///y**+q000$y22779:;v@   
 !+*955CE35M###6::1@+U3333--00;;=%%((335	6	6 	--00;;=%%((335	6	6
 i(  V ,! 112a777--11V;;; 223q888$(::??ABCvH    %66gtI,F,F,J,J'KLLLL 7
 %q)x(!%(335c:	;	; 	/!$'224[A	B	B    Ensemblec                 N   [        U [        5      (       a  [        SS9u  pS[        5       4/nSnO[	        SS9u  pS[        5       4/nSnU " US9nSR                  U5      n[        R                  " [        US9   UR                  X5        S S S 5        g ! , (       d  f       g = f)	Nr   r   r   
classifier	regressorr&   zshould be a {}match)
issubclassr   r   r   r	   r   formatpytestraises
ValueErrorr/   )rD   r:   r;   r$   ensemble_typeensembleerr_msgs          rA   +test_ensemble_heterogeneous_estimators_typerR      s     (O,,"R0-/01
$,/123
#:.H%%m4G	z	1Q 
2	1	1s   ;B
B$zX, y, Ensemblec                    [        U[        5      (       a  S[        5       4/nOS[        5       4/nU" US9nSn[        R
                  " [        US9   UR                  X5        S S S 5        [        U[        5      (       a  S[        5       4S[        5       4/nOS[        5       4S[        5       4/nU" US9nSn[        R
                  " [        US9   UR                  X5        S S S 5        [        U[        5      (       a  S[        5       4/nOS[        5       4/nU" US9nSn[        R
                  " [        US9   UR                  X5        S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       g = f)	Nlr__r&   z3Estimator names must not contain __: got \['lr__'\]rH   r   z-Names provided are not unique: \['lr', 'lr'\]r$   z3Estimator names conflict with constructor arguments)rJ   r   r   r   rL   rM   rN   r/   )r:   r;   rD   r$   rP   rQ   s         rA   6test_ensemble_heterogeneous_estimators_name_validationrU      sS    (O,,1345
/123
:.HDG	z	1Q 
2 (O,,/12T;M;O4PQ
-/049I9K2LM
:.H>G	z	1Q 
2 (O,,#%7%9:;
#%5%789
:.HCG	z	1Q 
2	1- 
2	1 
2	1 
2	1s$   EE*>E;
E'*
E8;
F	c                     UR                  SS9  [        R                  " [        SS9   UR	                  X5        S S S 5        g ! , (       d  f       g = f)Nr*   )r   zAll estimators are dropped.rH   )r5   rL   rM   rN   r/   )r:   r;   r<   s      rA   2test_ensemble_heterogeneous_estimators_all_droppedrW      s=    < F#	z)F	Ga 
H	G	Gs   A
AzEnsemble, Estimator, X, yc                 R   UR                  5       n[        R                  R                  SS/UR                  SS/S9R                  [        5      n[        R                  X$'   [        [        5       U" 5       5      nU " SU4SU4/S9nUR                  X#5      R                  X#5        g )	Nr)   r   g?g?)ppipe1pipe2r&   )copynprandomchoiceshapeastypeboolnanr   r   r/   score)rD   	Estimatorr:   r;   maskpiperP   s          rA   2test_heterogeneous_ensemble_support_missing_valuesrh      s     	
A99QFAGGSz:AA$GDffAG)+6DWdOgt_#EFHLLQ"rC   )*numpyr]   rL   sklearn.baser   r   r   sklearn.datasetsr   r   r   r	   sklearn.ensembler
   r   r   r   r   r   sklearn.imputer   sklearn.linear_modelr   r   sklearn.pipeliner   sklearn.svmr   r   r   r   r:   r;   X_ry_rmarkparametrizerB   rR   rU   rW   rh    rC   rA   <module>rv      s     > >   ) E * 6 6D!1D)S 
	
 2.
	
-/0IK(1qANO
 
	
		
 2.		
-/0IK(1qANO		

	
r*
	
+-.IK(0a1MN
 
	
		
r*		
+-.IK(0a1MN		
C+X	]  4j8k4j8v (/:	& @

+@-?@>

+>-=>;/B
';):;9/B
'99	  F 	
 2.	
D2D2F+G*HI	
	
 2.	
$0B0D)E(FG	
	
r*	
41A1C*D)EF	
	
r*	
/?/A(B'CD	
$	)  676 	/A6	,c37	-q!4	*C5	##rC   