Ë
    ÷Q(h¤
  ã                   ób   — d 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
 ddlmZ d„ Zd„ Zd	„ Zy)
z2
Tests for sklearn.cluster._feature_agglomeration
é    N)Úassert_array_equal)ÚFeatureAgglomeration)Ú
make_blobs)Úassert_array_almost_equalc                  óò  — d} t        j                  g d¢«      j                  dd«      }t        | t         j                  ¬«      }t        | t         j
                  ¬«      }|j                  |«       |j                  |«       t        j                  t        j                  |j                  «      «      | k(  sJ ‚t        j                  t        j                  |j                  «      «      | k(  sJ ‚t        j                  |j                  «      |j                  d   k(  sJ ‚t        j                  |j                  «      |j                  d   k(  sJ ‚|j                  |«      }|j                  |«      }|j                  d   | k(  sJ ‚|j                  d   | k(  sJ ‚|t        j                  dg«      k(  sJ ‚|t        j                  dg«      k(  sJ ‚|j                  |«      }|j                  |«      }t        j                  |d   «      j                  | k(  sJ ‚t        j                  |d   «      j                  | k(  sJ ‚t        |j                  |«      |«       t        |j                  |«      |«       y )Né   ©r   r   r   é   ©Ú
n_clustersÚpooling_funcgUUUUUUÕ?g        r   )ÚnpÚarrayÚreshaper   ÚmeanÚmedianÚfitÚsizeÚuniqueÚlabels_ÚshapeÚ	transformÚinverse_transformr   )r   ÚXÚ
agglo_meanÚagglo_medianÚXt_meanÚ	Xt_medianÚX_full_meanÚX_full_medians           ún/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sklearn/cluster/tests/test_feature_agglomeration.pyÚtest_feature_agglomerationr"      s  € Ø€JÜ
�‰’Ó×#Ñ# A qÓ)€Aä%°Ì"Ï'É'ÔR€JÜ'°:ÌBÏIÉIÔV€LØ‡N�N�1ÔØ×Ñ�QÔä�7‰7”2—9‘9˜Z×/Ñ/Ó0Ó1°ZÒ?Ð?Ð?Ü�7‰7”2—9‘9˜\×1Ñ1Ó2Ó3°zÒAÐAÐAÜ�7‰7�:×%Ñ%Ó&¨!¯'©'°!©*Ò4Ð4Ð4Ü�7‰7�<×'Ñ'Ó(¨A¯G©G°A©JÒ6Ð6Ð6ð ×"Ñ" 1Ó%€GØ×&Ñ& qÓ)€IØ�=‰=˜Ñ˜zÒ)Ð)Ð)Ø�?‰?˜1Ñ Ò+Ð+Ð+Ø”b—h‘h ˜yÓ)Ò)Ð)Ð)ØœŸ™ # ›Ò'Ð'Ð'ð ×.Ñ.¨wÓ7€KØ ×2Ñ2°9Ó=€MÜ�9‰9�[ ‘^Ó$×)Ñ)¨ZÒ7Ð7Ð7Ü�9‰9�] 1Ñ%Ó&×+Ñ+¨zÒ9Ð9Ð9ä˜j×2Ñ2°;Ó?ÀÔIÜ˜l×4Ñ4°]ÓCÀYÕOó    c                  óì   — t        dd¬«      \  } }t        d¬«      }|j                  | «       |j                  }|j	                  «       }t        t        |«      D �cg c]  }d|› �‘Œ	 c}|«       yc c}w )z9Check `get_feature_names_out` for `FeatureAgglomeration`.é   r   )Ú
n_featuresÚrandom_stater
   )r   ÚfeatureagglomerationN)r   r   r   Ún_clusters_Úget_feature_names_outr   Úrange)r   Ú_Úagglor   Ú	names_outÚis         r!   Ú,test_feature_agglomeration_feature_names_outr0   0   sh   € ä °Ô3�D€A€qÜ ¨AÔ.€EØ	‡I�Iˆa„LØ×"Ñ"€Jà×+Ñ+Ó-€IÜÜ-2°:Ó->Ö?¨Ð ˜sÒ	#Ò?ÀõùÚ?s   ÁA1c                  óø  — t        j                  g d¢«      j                  dd«      } t        dt         j                  ¬«      }|j                  | «       |j                  | «      } t        j                  t        d¬«      5  |j                  «        d d d «       t        j                  t        d¬«      5  |j                  | | ¬«       d d d «       t        j                  d	¬
«      5  t        j                  d«       |j                  | «       d d d «       t        j                  t        d¬«      5  |j                  | ¬«       d d d «       y # 1 sw Y   Œ¼xY w# 1 sw Y   Œ‘xY w# 1 sw Y   ŒXxY w# 1 sw Y   y xY w)Nr	   r   r
   r   z$Missing required positional argument)Úmatchz%Cannot use both X and Xt. Use X only.)r   ÚXtT)ÚrecordÚerrorzXt was renamed X in version 1.5)r3   )r   r   r   r   r   r   r   ÚpytestÚraisesÚ	TypeErrorr   ÚwarningsÚcatch_warningsÚsimplefilterÚwarnsÚFutureWarning)r   Úests     r!   Ú%test_inverse_transform_Xt_deprecationr?   >   s,  € Ü
�‰’Ó×#Ñ# A qÓ)€Aä
¨!¼"¿'¹'Ô
B€CØ‡G�GˆA„JØ�‰�aÓ€Aä	�‰”yÐ(NÔ	Oñ  Ø×ÑÔ÷ ô 
�‰”yÐ(OÔ	Pñ )Ø×Ñ  aÐÔ(÷)ô 
×	 Ñ	 ¨Ô	-ñ !Ü×Ñ˜gÔ&Ø×Ñ˜aÔ ÷!ô 
�‰”mÐ+LÔ	Mñ $Ø×Ñ ÐÔ#÷$ð $÷ ð  ú÷)ð )ú÷!ð !ú÷$ð $ús0   Â EÂ4EÃ&'E$Ä0E0ÅEÅE!Å$E-Å0E9)Ú__doc__r9   Únumpyr   r6   Únumpy.testingr   Úsklearn.clusterr   Úsklearn.datasetsr   Úsklearn.utils._testingr   r"   r0   r?   © r#   r!   ú<module>rG      s2   ðñó ã Û Ý ,å 0Ý 'Ý <òPò@
ó$r#   