§
    rŠtjÛ  ã                   ó¨   — d dl Zd dlZd dlmZ d dlmZmZ d dlm	Z	 d dl
mZ d„ Zd„ Zd„ Zej                             d	eeg¦  «        d
„ ¦   «         ZdS )é    N)Úeuclidean_distances)ÚKNeighborsTransformerÚRadiusNeighborsTransformer)Ú_is_sorted_by_data)Úassert_array_equalc                  ó8  — d} d}d}d}t           j                             d¦  «        }|                     ||¦  «        }|                     ||¦  «        }t          j        t          |¦  «        d¦  «        }dD ]Ï}|dk    }	t          | |¬¦  «        }
|
                     |¦  «        }|j        ||fk    sJ ‚|j	        j        || |	z   z  fk    sJ ‚|j
        d	k    sJ ‚t          |¦  «        sJ ‚|
                     |¦  «        }|j        ||fk    sJ ‚|j	        j        || |	z   z  fk    sJ ‚|j
        d	k    sJ ‚t          |¦  «        sJ ‚ŒÐdD ]Ï}|dk    }	t          ||¬
¦  «        }
|
                     |¦  «        }|j        ||fk    sJ ‚|j	        j        || |	z   z  fk    rJ ‚|j
        d	k    sJ ‚t          |¦  «        sJ ‚|
                     |¦  «        }|j        ||fk    sJ ‚|j	        j        || |	z   z  fk    rJ ‚|j
        d	k    sJ ‚t          |¦  «        sJ ‚ŒÐd S )Né   é   é   é
   é*   )ÚdistanceÚconnectivityr   )Ún_neighborsÚmodeÚcsr)Úradiusr   )ÚnpÚrandomÚRandomStateÚrandnÚ
percentiler   r   Úfit_transformÚshapeÚdataÚformatr   Ú	transformr   )r   Ún_samples_fitÚ	n_queriesÚ
n_featuresÚrngÚXÚX2r   r   Úadd_oneÚnntÚXtÚX2ts                ú`/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sklearn/neighbors/tests/test_graph.pyÚtest_transformer_resultr)   
   s¡  € à€KØ€MØ€IØ€Jå
Œ)×
Ò
 Ñ
#Ô
#€CØ�	Š	�- Ñ,Ô,€AØ	�Š�9˜jÑ	)Ô	)€BÝŒ]Õ.¨qÑ1Ô1°2Ñ6Ô6€Fð -ð 'ð 'ˆØ˜*Ò$ˆÝ#°À$ÐGÑGÔGˆØ×Ò˜qÑ!Ô!ˆØŒx˜M¨=Ð9Ò9Ð9Ð9Ð9ØŒwŒ} °+ÀÑ2GÑ!HÐ JÒJÐJÐJÐJØŒy˜EÒ!Ð!Ð!Ð!Ý! "Ñ%Ô%Ð%Ð%Ð%à�mŠm˜BÑÔˆØŒy˜Y¨Ð6Ò6Ð6Ð6Ð6ØŒxŒ~ )¨{¸WÑ/DÑ"EÐ!GÒGÐGÐGÐGØŒz˜UÒ"Ð"Ð"Ð"Ý! #Ñ&Ô&Ð&Ð&Ð&Ð&ð -ð 'ð 'ˆØ˜*Ò$ˆÝ(°¸TÐBÑBÔBˆØ×Ò˜qÑ!Ô!ˆØŒx˜M¨=Ð9Ò9Ð9Ð9Ð9Ø”7”= ]°kÀGÑ6KÑ%LÐ$NÒNÐNÐNÐNØŒy˜EÒ!Ð!Ð!Ð!Ý! "Ñ%Ô%Ð%Ð%Ð%à�mŠm˜BÑÔˆØŒy˜Y¨Ð6Ò6Ð6Ð6Ð6Ø”8”> i°;ÀÑ3HÑ&IÐ%KÒKÐKÐKÐKØŒz˜UÒ"Ð"Ð"Ð"Ý! #Ñ&Ô&Ð&Ð&Ð&Ð&ð'ð 'ó    c                 óœ   — |                       ¦   «         } | j        | j        | j        k             }t          |¦  «        | j        d         k    S )z0Return True if the diagonal is explicitly storedr   )ÚtocooÚrowÚcolÚlenr   )r"   Úexplicits     r(   Ú_has_explicit_diagonalr1   7   s:   € à	�Š‰	Œ	€AØŒu�Q”U˜aœe’^Ô$€HÝˆx‰=Œ=˜AœG AœJÒ&Ð&r*   c                  ó°  — d} d\  }}}t           j                             d¦  «        }|                     ||¦  «        }|                     ||¦  «        }t	          | ¬¦  «        }|                     |¦  «        }t          |¦  «        sJ ‚t          j        |j         	                    || dz   ¦  «        d d …df         dk    ¦  «        sJ ‚| 
                    |¦  «        }t          |¦  «        sJ ‚t          j        |j         	                    || dz   ¦  «        d d …df         dk    ¦  «        sJ ‚| 
                    |¦  «        }	t          |	¦  «        rJ ‚d S )Nr	   )r
   r   r   r   )r   é   r   )r   r   r   r   r   r   r1   Úallr   Úreshaper   )
r   r   Ún_samples_transformr    r!   r"   r#   r%   r&   r'   s
             r(   Útest_explicit_diagonalr7   >   sQ  € à€KØ5?Ñ2€MÐ&¨
Ý
Œ)×
Ò
 Ñ
#Ô
#€CØ�	Š	�- Ñ,Ô,€AØ	�ŠÐ&¨
Ñ	3Ô	3€Bå
¨KÐ
8Ñ
8Ô
8€CØ	×	Ò	˜1Ñ	Ô	€BÝ! "Ñ%Ô%Ð%Ð%Ð%ÝŒ6�"”'—/’/ -°¸q±ÑAÔAÀ!À!À!ÀQÀ$ÔGÈ1ÒLÑMÔMÐMÐMÐMà	�Š�qÑ	Ô	€BÝ! "Ñ%Ô%Ð%Ð%Ð%ÝŒ6�"”'—/’/ -°¸q±ÑAÔAÀ!À!À!ÀQÀ$ÔGÈ1ÒLÑMÔMÐMÐMÐMð �-Š-˜Ñ
Ô
€CÝ% cÑ*Ô*Ð*Ð*Ð*Ð*Ð*r*   ÚKlassc                 ó   ‡— d}d}t           j                             d¦  «        }|                     ||¦  «        } | ¦   «                              |¦  «        }|                     ¦   «         }| j                             ¦   «         Št          j        ˆfd„t          |j
        ¦  «        D ¦   «         t          ¬¦  «        }t          ||¦  «         dS )zFCheck `get_feature_names_out` for transformers defined in `_graph.py`.r
   r   r   c                 ó   •— g | ]}‰› |› �‘Œ	S © r;   )Ú.0ÚiÚclass_name_lowers     €r(   ú
<listcomp>z0test_graph_feature_names_out.<locals>.<listcomp>b   s%   ø€ ÐEÐEÐE aÐÐ	!˜aÐ	!Ð	!ÐEÐEÐEr*   )ÚdtypeN)r   r   r   r   ÚfitÚget_feature_names_outÚ__name__ÚlowerÚarrayÚrangeÚn_samples_fit_Úobjectr   )	r8   r   r    r!   r"   ÚestÚ	names_outÚexpected_names_outr>   s	           @r(   Útest_graph_feature_names_outrL   T   sÆ   ø€ ð €MØ€JÝ
Œ)×
Ò
 Ñ
#Ô
#€CØ�	Š	�- Ñ,Ô,€Aà
ˆ%‰'Œ'�+Š+�a‰.Œ.€CØ×)Ò)Ñ+Ô+€Ià”~×+Ò+Ñ-Ô-ÐÝœØEÐEÐEÐE­5°Ô1CÑ+DÔ+DÐEÑEÔEÝðñ ô Ðõ �yÐ"4Ñ5Ô5Ð5Ð5Ð5r*   )Únumpyr   ÚpytestÚsklearn.metricsr   Úsklearn.neighborsr   r   Úsklearn.neighbors._baser   Úsklearn.utils._testingr   r)   r1   r7   ÚmarkÚparametrizerL   r;   r*   r(   ú<module>rU      sÖ   ðØ Ð Ð Ð Ø €€€à /Ð /Ð /Ð /Ð /Ð /Ø OÐ OÐ OÐ OÐ OÐ OÐ OÐ OØ 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø 5Ð 5Ð 5Ð 5Ð 5Ð 5ð*'ð *'ð *'ðZ'ð 'ð 'ð+ð +ð +ð, „×Ò˜Ð#8Ð:TÐ"UÑVÔVð6ð 6ñ WÔVð6ð 6ð 6r*   