
    Q3j1              
            d dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dl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 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mZ d dlmZ d dl m!Z!m"Z"  ejF                         5   ejH                  de%       ejL                  jO                  e
jP                        gZ) e* ede)      D   cg c]    e+ fddD              s d    c}       Z,ddd       g dZ-g dZ.d Z/d Z0d Z1d Z2e	jf                  ji                  d      e	jf                  ji                  d      e	jf                  jk                  d e             d                      Z6d Z7yc c} w # 1 sw Y   xY w)    N)	signature)walk_packages)_BaseCallback)make_classification)enable_halving_search_cvenable_iterative_imputerLogisticRegression)FunctionTransformer)all_estimators)_construct_instances)_get_func_namecheck_docstring_parametersignore_warnings)_is_deprecated)_enforce_estimator_tags_X_enforce_estimator_tags_yignorezsklearn.)prefixpathc              3   ,   K   | ]  }|d    v   yw)   N ).0substrpckgs     T/DATA/.local/lib/python3.12/site-packages/sklearn/tests/test_docstring_parameters.py	<genexpr>r   0   s      0Vf$q'!0Vs   )z._z.tests.zsklearn.externalsr   )z%sklearn.utils.deprecation.load_mlcompzsklearn.pipeline.make_pipelinezsklearn.pipeline.make_unionHalfBinomialLossScoringMonitorLog)fitscorefit_predictfit_transformpartial_fitpredictc                  P   t        j                  dd       ddlm}  g }t        D ]  }|j                  d      r|dk(  rt        j                  d	      5  t        j                  |      }d d d        t        j                  t        j                        }|D cg c]#  }|d
   j                  j                  d      s"|% }}|D ]M  \  }}g }|t        v s|j                  d      r#t        j                   |      r9t        j                  d	      5 }| j#                  |      }	d d d        t%              rt'        d|d|d|d         t)        |j*                        r|t-        |j.                  	      z  }|	j0                  D ]  }
t3        |t4              r|
dv rt7        ||
      }t)        |      r0d }|
t8        v r5t;        |      }d|j<                  v r|j<                  d   j>                  dg}t-        ||      }||z  } ||z  }P t        j                  |t        j@                        }|D cg c]  }|d
   j                  |k(  s| }}|D ]l  \  }}|j                  d      r|dk(  r|j                  d      r/tC        |      tE        fdt        D              rSt)        |      r_|t-        |      z  }n  djG                  |      }t%        |      dkD  rtI        d|z         y # 1 sw Y   xY wc c}w # 1 sw Y   xY wc c}w )Nnumpydocz+numpydoc is required to test the docstrings)reasonr   	docscrapez	.conftestzsklearn.utils.fixesT)recordr   sklearn_zError for __init__ of z in z:
)setupteardownon_fit_task_beginon_fit_task_endy)r   configurationr/   c              3   &   K   | ]  }|v  
 y w)Nr   )r   dname_s     r   r   z,test_docstring_parameters.<locals>.<genexpr>   s     >+=aqEz+=s   
zDocstring Error:
)%pytestimportorskipr(   r+   PUBLIC_MODULESendswithwarningscatch_warnings	importlibimport_moduleinspect
getmembersisclass
__module__
startswith_DOCSTRING_IGNORES
isabstractClassDoclenRuntimeErrorr   __new__r   __init__methods
isinstancer   getattr_METHODS_IGNORE_NONE_Yr   
parametersdefault
isfunctionr   anyjoinAssertionError)r+   	incorrectnamemoduleclassesclscnamethis_incorrectwcdocmethod_namemethodparam_ignoresigresult	functionsfnfnamefuncmsgr7   s                       @r   test_docstring_parametersrj   J   s    H
 #I==%(($$D1,,T2F 2$$VW__=")U'3SV->->-I-I)-T3'U!JE3N**e.>.>s.C!!#&((5 ))#. 61v"=@$!M 
 ckk*8tLLN#||
 c=1k F 7  k2!&)# "88#F+Ccnn,1D1L1L1T(+u3F<P&(/  ,2 'IY "\ &&vw/A/AB	"+H)Br!u/?/?4/GR)	H$KE4$'DMM',B"4(E>+=>>~H 7==	 %{ R ))I
C
9~1C788 G 21 V 65T Is0   L#LLLL#L#L	L c                 ,     | t               dddgi      S )NCg?r   r	   )SearchCVs    r   _construct_searchcv_instancern      s    &(3a/::    c                     | j                   dk(  r | ddddgfg      S | j                   dk(  r | dt               fg	      S | j                   d
k(  r | dt               fg      S y )NColumnTransformertransformerpassthroughr   r   )transformersPipelineclf)stepsFeatureUnion)transformer_list)__name__r
   r   )	Estimators    r   $_construct_compose_pipeline_instancer|      sy    00}q!f'M&NOO			z	)(:(< =>??			~	-M;N;P+Q*RSS 
.ro   c                 |    t        j                  g dg dg dg dg dgt         j                        } | |      S )N)r   r   r   )r~      )r   r   r   )r   r   r   )r   r   r   )dtype)
dictionary)nparrayfloat64)r{   r   s     r   _construct_sparse_coderr      s2    	KIyAjjJ 
++ro   zJignore:The default value of `copy` will change from False to True in 1.10.z-ignore::sklearn.exceptions.ConvergenceWarningzname, Estimatorc                 .	   t        j                  d       ddlm} |j	                  |      }|d   }|j
                  dv rt        |      }n|j
                  dv rt        |      }np|j
                  dk(  rt        |      }nU|j
                  dk(  r2t        d	d
d      \  }} |t               j                  ||            }nt        t        |            }|j
                  dk(  r|j                  d       n|j
                  dk(  r|j                  d       n|j
                  dk(  s|j
                  j                  d      r|j                  d       n|j
                  dv r|j                  d       ng|j
                  dk(  r|j                  d       nE|j
                  dk(  r|j                  dd       n"|j
                  dk(  r|j                  dd       d |j!                         v r3|j                  d!       |j
                  dk(  r|j                  d"!       d#|j!                         v r|j                  d$       i }|j
                  j#                  d%      r/|j
                  d&v rg d'}n|j
                  d(k(  r
ddd)d*dd+g}d }n+t        d	d*ddd,      \  }}t%        ||      }t'        ||      }|j)                         j*                  j,                  r|j                  |       n|j)                         j*                  j.                  r%|j                  t0        j2                  ||f          n\|j)                         j4                  j6                  r&|j                  t0        j8                  d-f   |       n|j                  |       |D ]q  }	|	j:                  |v rd.j=                  |	j>                        jA                         }
d/|
v r@tC        tD        0      5  tG        ||	j:                        sJ 	 d d d        s tI        |      }|D 	cg c]  }	|	j:                   }}	tK        |      jM                  |      }tK        |      jM                  |      }|rtO        d1|j
                   d2|       y # 1 sw Y   xY wc c}	w )3Nr(   r   r*   
Attributes)HalvingRandomSearchCVRandomizedSearchCVHalvingGridSearchCVGridSearchCV)rq   ru   rx   SparseCoderFrozenEstimator      )	n_samples
n_featuresrandom_stateSelectKBestr   )kDummyClassifier
stratified)strategyCCAPLSr   )n_components)GaussianRandomProjectionSparseRandomProjectionTSNE)
perplexityMDSrandom)n_initinitLogisticRegressionCV)r   neg_log_loss)	l1_ratiosscoringmax_iter)r      r   )r   
Vectorizer)CountVectorizerHashingVectorizerTfidfVectorizer)zThis is the first document.z%This document is the second document.zAnd this is the third one.zIs this the first document?DictVectorizer)foobar   )r   baz)r   r   n_redundant	n_classesr   . zonly categoryzUndocumented attributes for z: )(r9   r:   r(   r+   rH   rz   rn   r|   r   r   r
   r!   nextr   
set_paramsrE   
get_paramsr<   r   r   __sklearn_tags__target_tagsone_d_labelstwo_d_labelsr   c_
input_tagsthree_d_arraynewaxisrX   rU   desclowerr   FutureWarninghasattr_get_all_fitted_attributesset
differencerV   )rX   r{   r+   doc
attributesestXr3   skipped_attributesattrr   fit_attrfit_attr_namesundocumented_attrss                 r   test_fit_docstring_attributesr      s.    
#"


Y
'C\"J   +95			   

 39=			}	,%i0			0	0"RAAN1*,00A67 '	23]*			0	0-			u	$	(:(:(E(Ee(LA&			   

 	A&			v	%!$			u	$ah/ 
		5	5 	~> S^^%%"'NNCN())A& ""<0 "
 

A #331%q';<A"
1 &c1-%c1-
))66
					+	+	8	8ad					*	*	8	8"**c/"A&199**xx		"((* d?m43		*** 54  *#.H,67JDdiiJN7X11.A/0;;<NO*9+=+=*>bAS@TU
 	
  54 8s   ,RRR	c                 ,   t        | j                  j                               }t        j                         5  t        j
                  dt               t        | j                        D ]G  }t        | j                  |      }t        |t              s*	 t        | |       |j                  |       I 	 ddd       |D cg c](  }|j                  d      s|j                  d      r'|* c}S # t        t        f$ r Y w xY w# 1 sw Y   RxY wc c}w )zBGet all the fitted attributes of an estimator including propertieserrorr   Nr.   )list__dict__keysr=   r>   filterwarningsr   dir	__class__rO   rN   propertyAttributeErrorappendr<   rE   )	estimatorr   rX   objr   s        r   r   r   D  s     I&&++-.H 
	 	 	"-@	++,D)--t4Cc8,	4( OOD! - 
#   Mx!1::c?1<<;LAxMM	 #M2  
#	"  NsB   ADC0 D DD)D0D?DDDD)8r?   rA   osr=   r   pkgutilr   numpyr   r9   r-   sklearn.callback._baser   sklearn.datasetsr   sklearn.experimentalr   r   sklearn.linear_modelr
   sklearn.preprocessingr   sklearn.utilsr   -sklearn.utils._test_common.instance_generatorr   sklearn.utils._testingr   r   r   sklearn.utils.deprecationr   sklearn.utils.estimator_checksr   r   r>   simplefilterr   r   dirname__file__sklearn_pathr   rT   r;   rF   rP   rj   rn   r|   r   markr   parametrizer   r   )r   s   pr   <module>r      sv     	   !    0 0 4 5 ( N 
 5 XH(M2GGOOG$4$456L &ZlK	
K 0V  GK	
N	   W9t;T, P KL*N,<=@
 > M
@
FNo	
 s   ?A	E4E/
%E4/E44E=