Ë
    ”ri¼  ã                   óh   — 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 d„ Zd„ Zd	„ Zd
„ Zy)é    N)Úassert_allclose)Ú	load_iris)ÚPCA)ÚClassicalMDS)Úeuclidean_distancesc                  ó„  — t        d¬«      \  } }t        dd¬«      }t        d¬«      }|j                  | «      }|j                  | «      }t	        d«      D ])  }|d|f   dk  sŒ|d|f   dkD  sŒ|d d …|fxx   dz  cc<   Œ+ t        ||«       t        t        j                  |j                  «      |j                  «       y )	NT©Ú
return_X_yé   Ú	euclidean©Ún_componentsÚmetric)r   r   éÿÿÿÿ)
r   r   r   Úfit_transformÚranger   ÚnpÚsqrtÚeigenvalues_Úsingular_values_)ÚXÚ_ÚcmdsÚpcaÚZ1ÚZ2Úcomps          úg/var/www/auto_recruiter/arenv/lib/python3.12/site-packages/sklearn/manifold/tests/test_classical_mds.pyÚ$test_classical_mds_equivalent_to_pcar      sµ   € Ü Ô%D€A€qä Q¨{Ô;€DÜ
˜1Ô
€Cà	×	Ñ	˜AÓ	€BØ	×	Ñ	˜1Ó	€Bô a“ò ˆØˆaˆg‰;˜‹?˜r ! T '™{¨Q›ØŠq$ˆw‹K˜2ÑŒKðô B˜Ôä”B—G‘G˜D×-Ñ-Ó.°×0DÑ0DÕEó    c                  óÄ   — t        d¬«      \  } }t        dd¬«      }|j                  | «      }t        dd¬«      }|j                  t        | «      «      }t	        ||«       y )NTr	   r   r   r   Úprecomputed)r   r   r   r   r   )r   r   r   r   r   s        r   Ú3test_classical_mds_equivalent_on_data_and_distancesr#      sX   € Ü Ô%D€A€qä Q¨{Ô;€DØ	×	Ñ	˜AÓ	€Bä Q¨}Ô=€DØ	×	Ñ	Ô/°Ó2Ó	3€BäB˜Õr    c                  ó¢  — t        j                  g d¢g d¢g d¢g«      } t        j                  t        d¬«      5  t        d¬«      j                  | «       d d d «       t        j                  g d¢g d¢g«      } t        j                  t        d¬«      5  t        d¬«      j                  | «       d d d «       y # 1 sw Y   ŒdxY w# 1 sw Y   y xY w)	N)r   é   r   )é   é   é   )é   é   é   zArray must be symmetric)Úmatchr"   )r   z&array must be 2-dimensional and square)r   ÚarrayÚpytestÚraisesÚ
ValueErrorr   Úfit)Údissims    r   Útest_classical_mds_wrong_inputsr3   *   sŸ   € äX‰X’y¢)ªYÐ7Ó8€FÜ	‰”zÐ)BÔ	Cñ 7Ü˜MÔ*×.Ñ.¨vÔ6÷7ô X‰X’y¢)Ð,Ó-€FÜ	‰”zÐ)QÔ	Rñ 7Ü˜MÔ*×.Ñ.¨vÔ6÷7ð 7÷7ð 7ú÷
7ð 7ús   ºB9ÂCÂ9CÃCc                  ó*  — t        d¬«      \  } }t        dd¬«      }|j                  | «      }t        ddddi¬«      }|j                  | «      }t        ||«       t        dddd	i¬«      }|j                  | «      }t	        j
                  ||«      rJ ‚y )
NTr	   r   r   r   Ú	minkowskiÚp)r   r   Úmetric_paramsr%   )r   r   r   r   r   Úallclose)r   r   r   r   r   ÚZ3s         r   Ú test_classical_mds_metric_paramsr:   6   s“   € Ü Ô%D€A€qä Q¨{Ô;€DØ	×	Ñ	˜AÓ	€Bä Q¨{È3ÐPQÈ(ÔS€DØ	×	Ñ	˜AÓ	€BäB˜Ôä Q¨{È3ÐPQÈ(ÔS€DØ	×	Ñ	˜AÓ	€Bä{‰{˜2˜rÔ"Ð"Ð"Ð"r    )Únumpyr   r.   Únumpy.testingr   Úsklearn.datasetsr   Úsklearn.decompositionr   Úsklearn.manifoldr   Úsklearn.metricsr   r   r#   r3   r:   © r    r   ú<module>rB      s/   ðÛ Û Ý )å &Ý %Ý )Ý /òFò&	ò	7ó#r    