Ë
    8Ò^jÎy  ã                   ó–  — d dl Zd dlZd dlmZ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mZmZ d dlmZ d d	lmZmZ d d
lmZmZmZmZmZ d dl m!Z!m"Z"m#Z#m$Z$m%Z% dZ&d„ Z'ejP                  jS                  dejT                  ejV                  g«      d„ «       Z,ejP                  jS                  ddge#z   «      ejP                  jS                  dddg«      d„ «       «       Z-d„ Z.ejP                  jS                  dddg«      d„ «       Z/d„ Z0d„ Z1ejP                  jS                  dddg«      ejP                  jS                  de#«      d„ «       «       Z2d„ Z3ejP                  jS                  de!«      d „ «       Z4d!„ Z5d"„ Z6d#„ Z7d$„ Z8ejP                  jS                  ddge#z   «      ejP                  jS                  d%ddg«      d&„ «       «       Z9d'„ Z:ejP                  jS                  ddge"z   «      d(„ «       Z;ejP                  jS                  d)ddg«      ejP                  jS                  ddge#z   «      d*„ «       «       Z<ejP                  jS                  d+e$«      d,„ «       Z=ejP                  jS                  de#«      d-„ «       Z>ejP                  jS                  ddge#z   «      ejP                  jS                  d.d/«      ejP                  jS                  d0d1«      d2„ «       «       «       Z?ejP                  jS                  d)ddg«      ejP                  jS                  dddg«      d3„ «       «       Z@d4„ ZAejP                  jS                  d5dd6g«      ejP                  jS                  ddge#z   «      d7„ «       «       ZBejP                  jS                  de#«      d8„ «       ZCejP                  jS                  d9g d:¢«      ejP                  jS                  ddge#D � cg c]0  }  ejˆ                  | ejP                  j‹                  d;¬<«      ¬=«      ‘Œ2 c} z   «      ejP                  jS                  dddg«      d>„ «       «       «       ZFed?„ «       ZGd@„ ZHyc c} w )Aé    N)ÚlinalgÚsparse)Úconfig_context)ÚBaseEstimator)Ú	load_irisÚmake_regressionÚmake_sparse_uncorrelated)ÚLinearRegression)ÚLinearClassifierMixinÚ_preprocess_dataÚ_rescale_dataÚmake_dataset)Úadd_dummy_feature)Úget_namespace_and_deviceÚmove_estimator_to)Ú_array_api_for_testsÚassert_allcloseÚassert_array_almost_equalÚassert_array_equalÚ'skip_if_array_api_compat_not_configured)ÚCOO_CONTAINERSÚCSC_CONTAINERSÚCSR_CONTAINERSÚLIL_CONTAINERSÚ_sparse_eye_arrayç�íµ ÷Æ°>c                  óÀ  — dgdgg} ddg}t        «       }|j                  | |«       t        |j                  dg«       t        |j                  dg«       t        |j                  | «      ddg«       dgg} dg}t        «       }|j                  | |«       t        |j                  dg«       t        |j                  dg«       t        |j                  | «      dg«       y )Né   é   r   )r
   Úfitr   Úcoef_Ú
intercept_Úpredict)ÚXÚYÚregs      úo/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/sklearn/linear_model/tests/test_base.pyÚtest_linear_regressionr(   &   sÀ   € ð ˆˆqˆcˆ
€AØ	
ˆAˆ€Aä
Ó
€CØ‡G�GˆAˆq„Mä˜cŸi™i¨!¨Ô-Ü˜cŸn™n¨q¨cÔ2Ü˜cŸk™k¨!›n¨q°!¨fÔ5ð ˆˆ€AØ	
ˆ€Aä
Ó
€CØ‡G�GˆAˆq„MÜ˜cŸi™i¨!¨Ô-Ü˜cŸn™n¨q¨cÔ2Ü˜cŸk™k¨!›n¨q¨cÕ2ó    Údtypec                 ó�  — t         j                  j                  d«      }d}|j                  |«      }d|z  d|j                  |«      z  z   }t        j                  ||g«      }|ddgz  d|j                  |«      z  z   }|j                  | «      }|j                  | «      }t        j                  ||«      d   }t        d¬	«      j                  ||«      j                  }t         j                  j                  |||z  z
  «      }	t         j                  j                  |||z  z
  «      }
|
t        j                  |	d
¬«      k(  sJ ‚y)zs
    Check that LinearRegression is as good as `scipy.linalg.lstsq`.
    Non regression test for issue #33032.
    iq  i ¡ g333333Ó?çš™™™™™¹?ç      à?ç       @r   F©Úfit_interceptr   )ÚrelN)ÚnpÚrandomÚRandomStateÚrandÚcolumn_stackÚastyper   Úlstsqr
   r    r!   ÚnormÚpytestÚapprox)r*   ÚrngÚ	n_samplesÚx1Úx2r$   ÚyÚ
coef_scipyÚcoef_sklearnÚ
rmse_scipyÚrmse_sklearns              r'   Útest_linear_regression_vs_lstsqrE   >   s  € ô �)‰)×
Ñ
 Ó
%€CØ€Ià	�‰�)Ó	€BØ	ˆr‰�C˜#Ÿ(™( 9Ó-Ñ-Ñ	-€BÜ
�‰˜˜R˜Ó!€AØ	ˆS�#ˆJ‰˜˜sŸx™x¨	Ó2Ñ2Ñ2€Aà	�‰�‹€AØ	�‰�‹€Aä—‘˜a Ó# AÑ&€JÜ#°%Ô8×<Ñ<¸QÀÓB×HÑH€Lä—‘—‘  A¨
¡NÑ 2Ó3€JÜ—9‘9—>‘> ! a¨,Ñ&6Ñ"6Ó7€LØœ6Ÿ=™=¨¸Ô>Ò>Ð>Ñ>r)   Úsparse_containerr0   TFc                 ó°  — t         j                  j                  |«      }d\  }}|j                  ||f¬«      }| � | |«      }|j                  |¬«      }d|j	                  |¬«      z   }t        |d¬«      }	|	j                  |||¬«       |	j                  }
|	j                  }|	j                  j                  |j                  d   fk(  sJ ‚t        j                  |«      }|s|n
t        |«      }|j                  |z  |z  }|j                  |z  |z  }t        j                  ||«      }|st        |
|«       y t        |
|dd  «       t        ||d   «       y )	N)é   é   ©Úsizeç      ð?g¼‰Ø—²Òœ<)r0   Útol©Úsample_weightr   r   )r2   r3   r4   ÚnormalÚuniformr
   r    r!   r"   ÚshapeÚdiagr   ÚTr   Úsolver   )rF   r0   Úglobal_random_seedr<   r=   Ú
n_featuresr$   r@   rO   r&   Úcoefs1Úinter1ÚWÚX_augÚXwÚywÚcoefs2s                    r'   Ú%test_linear_regression_sample_weightsr_   W   s>  € ô
 �)‰)×
Ñ
Ð 2Ó
3€Cð !Ñ€Iˆzà�
‰
˜ JÐ/ˆ
Ó0€AØÐ#Ù˜QÓˆØ�
‰
˜	ˆ
Ó"€Aà˜#Ÿ+™+¨9˜+Ó5Ñ5€Mô ¨¸EÔ
B€CØ‡G�GˆAˆq €GÔ.Ø�Y‰Y€FØ�^‰^€Fà�9‰9�?‰?˜qŸw™w q™z˜mÒ+Ð+Ð+ô 	�‰�Ó€AÙ"‰AÔ(9¸!Ó(<€Eà	�‰�1‰�uÑ	€BØ	�‰�1‰�q‰€BÜ�\‰\˜"˜bÓ!€FáÜ˜ Õ'ä˜  q r 
Ô+Ü˜  q¡	Õ*r)   c                  óä   — d} t        d«      }t        j                  d«      }t        d¬«      }t	        j
                  t        | ¬«      5  |j                  ||«       d d d «       y # 1 sw Y   y xY w)Nz9Sparse data was passed for X, but dense data is required.é
   T©Úpositive©Úmatch)r   r2   Úonesr
   r:   ÚraisesÚ	TypeErrorr    )Ú	error_msgr$   r@   r&   s       r'   Ú.test_raises_value_error_if_positive_and_sparserj   €   sX   € ØK€Iä˜"Ó€AÜ
�‰�‹€Aä
 DÔ
)€Cä	�‰”y¨	Ô	2ñ Ø�‰��1Œ÷÷ ñ ús   Á
A&Á&A/zn_samples, n_features)r   é   )rk   r   c                 óD  — t         j                  j                  d«      }|j                  | |«      }|j                  | «      }|j                  | «      dz  dz   }d}d}t	        «       }|j                  |||«       |j                  |||«       |j                  |||«       y )Nr   r   r   rL   r.   )r2   r3   r4   Úrandnr
   r    )	r=   rW   r<   r$   r@   Úsample_weights_OKÚsample_weights_OK_1Úsample_weights_OK_2r&   s	            r'   Ú9test_raises_value_error_if_sample_weights_greater_than_1drq   Œ   s˜   € ô �)‰)×
Ñ
 Ó
"€CØ�	‰	�)˜ZÓ(€AØ�	‰	�)Ó€AØŸ	™	 )Ó,°Ñ1°AÑ5ÐØÐØÐä
Ó
€Cð ‡G�GˆAˆqÐ#Ô$Ø‡G�GˆAˆqÐ%Ô&Ø‡G�GˆAˆqÐ%Õ&r)   c                  ó�  — t        j                  ddgddgg«      } t        j                  g d¢g d¢g«      }t        j                  ddg«      }t        d¬	«      j                  | |«      }t        «       j                  | |«      }t        d¬	«      j                  ||«      }t        «       j                  ||«      }|j                  j
                  |j                  j
                  k(  sJ ‚|j                  j
                  |j                  j
                  k(  sJ ‚|j                  j                  |j                  j                  k(  sJ ‚y )
NgmâG©B‹Ø?gÊ\«^ºã?gñ‰L+KÕâ?gìf©iUÚ?)g&Ï/)Â¶Ñ?g ö<E/Ÿæ?g²MdÅô­�?)g".ÆáHwµ?g€%ü÷…|Ê?gÜ0Èeõ±æ?r   Fr/   )r2   Úarrayr
   r    r!   rR   Úndim)ÚX2ÚX3r@   Úlr2_without_interceptÚlr2_with_interceptÚlr3_without_interceptÚlr3_with_intercepts          r'   Útest_fit_interceptr{   ž   s  € ä	�‰�J 
Ð+¨j¸*Ð-EÐFÓ	G€BÜ	�‰Ú	-Ò/SÐTó
€Bô 	�‰�!�Q�Ó€Aä,¸5ÔA×EÑEÀbÈ!ÓLÐÜ)Ó+×/Ñ/°°AÓ6Ðä,¸5ÔA×EÑEÀbÈ!ÓLÐÜ)Ó+×/Ñ/°°AÓ6Ðà×#Ñ#×)Ñ)Ð-B×-HÑ-H×-NÑ-NÒNÐNÐNØ×#Ñ#×)Ñ)Ð-B×-HÑ-H×-NÑ-NÒNÐNÐNØ ×&Ñ&×+Ñ+Ð/D×/JÑ/J×/OÑ/OÒOÐOÑOr)   c                 ó|  — t         j                  j                  | «      }d}t        ||«      }|j	                  |«      }||z  }t        «       }|j                  ||j                  «       «       t        ||j                  |j                  z   «       t        |j                  |«      |j                  «       z
  d«       y )Néd   r   )r2   r3   r4   r   r5   r
   r    Úravelr   r!   r"   r#   )rV   r<   Únr$   Úbetar@   Úolss          r'   Útest_linear_regression_sparser‚   ±   sŽ   € ä
�)‰)×
Ñ
Ð 2Ó
3€CØ€AÜ˜!˜QÓ€AØ�8‰8�A‹;€DØ	ˆD‰€Aä
Ó
€CØ‡G�GˆAˆq�w‰w‹yÔÜ˜d C§I¡I°·±Ñ$>Ô?ä˜cŸk™k¨!›n¨q¯w©w«yÑ8¸!Õ<r)   Úcsr_containerc                 óØ  — t         j                  j                  d«      }d}d}|j                  ||«      }d||dk  <    ||«      }|j	                  |«      }t        | ¬«      }t        di |¤Ž}	t        di |¤Ž}
|	j                  ||«       |
j                  ||«       |	j                  t        j                  |
j                  «      k(  sJ ‚t        |	j                  |
j                  «       y )Nr   éÈ   r   ç        r,   r/   © )r2   r3   r4   rm   r5   Údictr
   r    r"   r:   r;   r   r!   )r0   rƒ   r<   r=   rW   r$   ÚXcsrr@   ÚparamsÚ	clf_denseÚ
clf_sparses              r'   Ú)test_linear_regression_sparse_equal_denser�   À   sÎ   € ô �)‰)×
Ñ
 Ó
"€CØ€IØ€JØ�	‰	�)˜ZÓ(€AØ€A€aˆ#�g�JÙ˜Ó€DØ�‰�Ó€AÜ Ô.€FÜ Ñ* 6Ñ*€IÜ!Ñ+ FÑ+€JØ‡M�M�!�QÔØ‡N�N�4˜ÔØ×Ñ¤6§=¡=°×1FÑ1FÓ#GÒGÐGÐGÜ�I—O‘O Z×%5Ñ%5Õ6r)   c                  óô  — t         j                  j                  d«      } t        | ¬«      \  }}t        j                  ||f«      j
                  }|j                  d   }t        «       }|j                  ||«       |j                  j                  d|fk(  sJ ‚|j                  |«      }|j                  ||«       |j                  |«      }t        t        j                  ||f«      j
                  |d¬«       y )Nr   ©Úrandom_stater   r   rk   ©Údecimal)r2   r3   r4   r   ÚvstackrT   rR   r
   r    r!   r#   r   )r<   r$   r@   r%   rW   r&   ÚY_predÚy_preds           r'   Ú'test_linear_regression_multiple_outcomer–   Ô   s¿   € ä
�)‰)×
Ñ
 Ó
"€CÜ¨Ô,�D€A€qä
�	‰	�1�a�&Ó×Ñ€AØ—‘˜‘€Jä
Ó
€CØ‡G�GˆQ�„OØ�9‰9�?‰?˜q *˜oÒ-Ð-Ð-Ø�[‰[˜‹^€FØ‡G�GˆAˆq„MØ�[‰[˜‹^€FÜœbŸi™i¨°Ð(8Ó9×;Ñ;¸VÈQÖOr)   Úcoo_containerc                 ó   — t         j                  j                  | «      }t        |¬«      \  }} ||«      }t        j                  ||f«      j
                  }|j                  d   }t        «       }|j                  ||«       |j                  j                  d|fk(  sJ ‚|j                  |«      }|j                  ||j                  «       «       |j                  |«      }	t        t        j                  |	|	f«      j
                  |d¬«       y )Nr�   r   r   rk   r‘   )r2   r3   r4   r	   r“   rT   rR   r
   r    r!   r#   r~   r   )
rV   r—   r<   r$   r@   r%   rW   r�   r”   r•   s
             r'   Ú.test_linear_regression_sparse_multiple_outcomer™   å   sÓ   € ô �)‰)×
Ñ
Ð 2Ó
3€CÜ#°Ô5�D€A€qÙ�aÓ€AÜ
�	‰	�1�a�&Ó×Ñ€AØ—‘˜‘€Jä
Ó
€CØ‡G�GˆAˆq„MØ�9‰9�?‰?˜q *˜oÒ-Ð-Ð-Ø�[‰[˜‹^€FØ‡G�GˆAˆq�w‰w‹yÔØ�[‰[˜‹^€FÜœbŸi™i¨°Ð(8Ó9×;Ñ;¸VÈQÖOr)   c                  óÈ  — dgdgg} ddg}t        d¬«      }|j                  | |«       t        |j                  dg«       t        |j                  dg«       t        |j                  | «      ddg«       dgg} dg}t        d¬«      }|j                  | |«       t        |j                  dg«       t        |j                  dg«       t        |j                  | «      dg«       y )Nr   r   Trb   r   )r
   r    r   r!   r"   r#   r   )r$   r@   r&   s      r'   Útest_linear_regression_positiver›   ÷   sÂ   € à
ˆˆqˆcˆ
€AØ	
ˆAˆ€Aä
 DÔ
)€CØ‡G�GˆAˆq„Mä˜cŸi™i¨!¨Ô-Ü˜cŸn™n¨q¨cÔ2Ü˜cŸk™k¨!›n¨q°!¨fÔ5ð ˆˆ€AØ	
ˆ€Aä
 DÔ
)€CØ‡G�GˆAˆq„MÜ�C—I‘I ˜sÔ#Ü�C—N‘N Q CÔ(Ü�C—K‘K “N Q CÕ(r)   c                 óX  — t         j                  j                  | «      }t        |¬«      \  }}t        j                  ||f«      j
                  }|j                  d   }t        d¬«      }|j                  ||«       |j                  j                  d|fk(  sJ ‚t        j                  |j                  dk\  «      sJ ‚|j                  |«      }|j                  ||j                  «       «       |j                  |«      }t        t        j                  ||f«      j
                  |«       y )Nr�   r   Trb   r   r†   )r2   r3   r4   r	   r“   rT   rR   r
   r    r!   Úallr#   r~   r   )	rV   r<   r$   r@   r%   rW   r�   r”   r•   s	            r'   Ú0test_linear_regression_positive_multiple_outcomerž     sâ   € ä
�)‰)×
Ñ
Ð 2Ó
3€CÜ#°Ô5�D€A€qÜ
�	‰	�1�a�&Ó×Ñ€AØ—‘˜‘€Jä
 DÔ
)€CØ‡G�GˆAˆq„MØ�9‰9�?‰?˜q *˜oÒ-Ð-Ð-Ü�6‰6�#—)‘)˜sÑ"Ô#Ð#Ð#Ø�[‰[˜‹^€FØ‡G�GˆAˆq�w‰w‹yÔØ�[‰[˜‹^€FÜ”B—I‘I˜v vÐ.Ó/×1Ñ1°6Õ:r)   c                 ó@  — t         j                  j                  | «      }t        |¬«      \  }}t	        d¬«      }|j                  ||«       t	        d¬«      }|j                  ||«       t        j                  |j                  |j                  z
  dz  «      dkD  sJ ‚y )Nr�   Trb   Fr   çü©ñÒMbP?)r2   r3   r4   r	   r
   r    Úmeanr!   )rV   r<   r$   r@   r&   Úregns         r'   Ú.test_linear_regression_positive_vs_nonpositiver£     s|   € ä
�)‰)×
Ñ
Ð 2Ó
3€CÜ#°Ô5�D€A€qä
 DÔ
)€CØ‡G�GˆAˆq„MÜ UÔ+€DØ‡H�HˆQ�„Nä�7‰7�C—I‘I §
¡
Ñ*¨qÑ0Ó1°DÒ8Ð8Ñ8r)   c                 ó®  — t         j                  j                  | «      }d}d}|j                  ||«      }|d d …df   d|d d …df   z  z   d|d d …df   z  z   d|d d …df   z  z   }t	        d¬	«      }|j                  ||«       t	        d
¬	«      }|j                  ||«       t        j                  |j                  |j                  z
  dz  «      dk  sJ ‚y )Nr…   é   r   r   r   rk   g      ø?Trb   Fr   )r2   r3   r4   r5   r
   r    r¡   r!   )rV   r<   r=   rW   r$   r@   r&   r¢   s           r'   Ú<test_linear_regression_positive_vs_nonpositive_when_positiver¦   ,  sÊ   € ô �)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JØ�‰�˜JÓ'€AØ	Š!ˆQˆ$‰�!�aš˜1˜‘g‘+Ñ  A¢a¨ d¡G¡Ñ+¨c°A²a¸°d±G©mÑ;€Aä
 DÔ
)€CØ‡G�GˆAˆq„MÜ UÔ+€DØ‡H�HˆQ�„Nä�7‰7�C—I‘I §
¡
Ñ*¨qÑ0Ó1°DÒ8Ð8Ñ8r)   Úuse_swc                 óì  — t         j                  j                  |«      }|j                  dd«      }|j                  dd«      }|j	                  d«      }| �	 | |«      }n|j                  «       }|j                  «       }|r|j                  «       }	nd }	t        «       }
|
j                  |||	¬«       | �t        |j                  «       |«       nt        ||«       t        ||«       |rt        |	|«       t        d¬«      }
|
j                  |||	¬«       | �t        |j                  «       |«       n't         j                  j                  ||z
  «      dkD  sJ ‚t        ||«       |rt        |	|«       y y )Nra   é   r   rN   F)Úcopy_Xgáz®GáÚ?)r2   r3   r4   rm   r5   Úcopyr
   r    r   Útoarrayr   r9   )rF   r§   rV   r<   Úoriginal_X_dataÚoriginal_y_dataÚoriginal_sw_datar$   r@   rO   r&   s              r'   Útest_inplace_data_preprocessingr°   =  sV  € ô
 �)‰)×
Ñ
Ð 2Ó
3€CØ—i‘i  BÓ'€OØ—i‘i  AÓ&€OØ—x‘x “|ÐàÐ#Ù˜_Ó-‰à× Ñ Ó"ˆØ×ÑÓ€Añ Ø(×-Ñ-Ó/‰àˆô Ó
€CØ‡G�GˆAˆq €GÔ.ØÐ#Ü˜Ÿ	™	› _Õ5ä˜˜?Ô+Ü�A�Ô'áÜ˜Ð'7Ô8ô  %Ô
(€CØ‡G�GˆAˆq €GÔ.ØÐ#ô 	˜Ÿ	™	› _Õ5ô
 �y‰y�~‰~˜a /Ñ1Ó2°TÒ9Ð9Ð9ô �A�Ô'áä˜Ð'7Õ8ð r)   c                 ó¾  — t         j                  j                  | «      }d}d}|j                  ||«      }|j                  |«      }t        j                  |d¬«      }t        j                  |d¬«      }t        ||d¬«      \  }}	}
}}}t        |
t        j                  |«      «       t        |d«       t        |t        j                  |«      «       |�J ‚t        ||«       t        |	|«       t        ||d¬«      \  }}	}
}}}t        |
|«       t        ||«       t        |t        j                  |«      «       |�J ‚t        |||z
  «       t        |	||z
  «       y )Nr…   r   r   ©ÚaxisFr/   T)	r2   r3   r4   r5   r¡   r   r   Úzerosrf   )rV   r<   r=   rW   r$   r@   Úexpected_X_meanÚexpected_y_meanÚXtÚytÚX_meanÚy_meanÚX_scaleÚsqrt_sws                 r'   Útest_preprocess_datar½   u  s<  € Ü
�)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JØ�‰�˜JÓ'€AØ�‰�Ó€AÜ—g‘g˜a aÔ(€OÜ—g‘g˜a aÔ(€Oä/?Ø	ˆ1˜Eô0Ñ,€BˆˆF�F˜G Wô ˜f¤b§h¡h¨zÓ&:Ô;Ü˜f aÔ(Ü˜g¤r§w¡w¨zÓ':Ô;Øˆ?Ðˆ?Ü˜b !Ô$Ü˜b !Ô$ä/?Ø	ˆ1˜Dô0Ñ,€BˆˆF�F˜G Wô ˜f oÔ6Ü˜f oÔ6Ü˜g¤r§w¡w¨zÓ':Ô;Øˆ?Ðˆ?Ü˜b ! oÑ"5Ô6Ü˜b ! oÑ"5Õ6r)   c                 ó¸  — t         j                  j                  | «      }d}d}d}|j                  ||«      }|j                  ||«      }t        j                  |d¬«      }|� ||«      }t        ||d¬«      \  }	}
}	}}	}	t        |t        j                  |«      «       t        |
|«       t        ||d¬«      \  }	}
}	}}	}	t        ||«       t        |
||z
  «       y )	Nr…   rk   r   r   r²   Fr/   T)r2   r3   r4   r5   r¡   r   r   r´   )rV   rF   r<   r=   rW   Ú	n_outputsr$   r@   r¶   Ú_r¸   rº   s               r'   Ú test_preprocess_data_multioutputrÁ   “  sÑ   € ä
�)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JØ€IØ�‰�˜JÓ'€AØ�‰�˜IÓ&€AÜ—g‘g˜a aÔ(€OàÐ#Ù˜QÓˆä-¨a°À%ÔHÑ€A€rˆ1ˆf�a˜Ü˜f¤b§h¡h¨yÓ&9Ô:Ü˜b !Ô$ä-¨a°À$ÔGÑ€A€rˆ1ˆf�a˜Ü˜f oÔ6Ü˜b ! f¡*Õ-r)   Úrescale_with_swc                 ó  — t         j                  j                  |«      }d}d}|j                  ||«      }d||dk  <   |d d …dfxx   dz  cc<   d|d d …df<   d|d d …d	f<   |j                  |«      }t        j                  |j                  |«      «      d
z   }t        j
                  |d|¬«      }	t        j
                  |d|¬«      }
t        j
                  ||d¬«      }t        j
                  ||z
  dz  |d¬«      }|dt        j                  |j                  «      j                  z  k  }t        |g d¢«       t        j                  |«      t        j                  |j                  «       «      z  }d
||<   |� ||«      }t        ||d|| ¬«      \  }}}}}}|� |j                  «       }|j                  «       }t        ||	«       t        ||
«       t        |t        j                  |«      «       | rdt!        |t        j                  |«      «       |�t!        ||d d …d f   |z  «       nt!        ||d d …d f   ||	z
  z  «       t!        ||||
z
  z  «       y |�J ‚|�t!        ||«       nt!        |||	z
  «       t!        |||
z
  «       y )Nr…   r¥   r†   r-   r   ra   rL   r   rk   r   )r³   Úweights)rÄ   r³   )r   r   r   r   T©r0   rO   rÂ   )r2   r3   r4   r5   ÚabsÚaverageÚfinfor*   Úepsr   ÚsqrtÚsumr   r¬   r   rf   r   )rÂ   rF   rV   r<   r=   rW   r$   r@   rO   rµ   r¶   ÚX_sample_weight_avgÚX_sample_weight_varÚconstant_maskÚexpected_X_scaler·   r¸   r¹   rº   r»   r¼   s                        r'   Útest_preprocess_data_weightedrÐ   ©  so  € ô
 �)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€Jð
 	�‰�˜JÓ'€AØ€A€aˆ#�g�Jð ‚aˆ€dƒGˆr�MƒGð €A‚aˆ€d�Gð €A‚aˆ€d�GØ�‰�Ó€Aä—F‘F˜3Ÿ8™8 IÓ.Ó/°!Ñ3€MÜ—j‘j ¨°MÔB€OÜ—j‘j ¨°MÔB€OäŸ*™* Q°ÀAÔFÐÜŸ*™*Ø	
Ð Ñ	  QÑ&°ÀAôÐð (¨"¬r¯x©x¸¿¹Ó/@×/DÑ/DÑ*DÑD€MÜ�}¢lÔ3Ü—w‘wÐ2Ó3´b·g±g¸m×>OÑ>OÓ>QÓ6RÑRÐð '(Ð�]Ñ#àÐ#Ù˜QÓˆä/?Ø	Ø	ØØ#Ø'ô0Ñ,€BˆˆF�F˜G Wð Ð#à�I‰I‹KˆØ�Z‰Z‹\ˆä˜f oÔ6Ü˜f oÔ6Ü˜g¤r§w¡w¨zÓ':Ô;ÙÜ˜¤§¡¨Ó!7Ô8ØÐ'Ü˜B ª¨4¨Ñ 0°1Ñ 4Õ5ä˜B ª¨4¨Ñ 0°A¸Ñ4GÑ HÔIÜ˜˜G q¨?Ñ':Ñ;Õ<àˆÐˆØÐ'Ü˜B Õ"ä˜B  OÑ 3Ô4Ü˜˜A Ñ/Õ0r)   Úlil_containerc                 óP  — t         j                  j                  | «      }d}d}t        j                  ||d|¬«      } ||«      }|j	                  |«      }|j                  «       }t        ||d¬«      \  }}	}
}}}t        |
t        j                  |«      «       t        |d«       t        |t        j                  |«      «       |�J ‚t        |j                  «       |«       t        |	|«       t        ||d¬«      \  }}	}
}}}t        |
t        j                  |d¬	«      «       t        |t        j                  |d¬	«      «       t        |t        j                  |«      «       |�J ‚t        |j                  «       |«       t        |	|t        j                  |d¬	«      z
  «       y )
Nr…   r   r-   )Údensityr�   Fr/   r   Tr²   )r2   r3   r4   r   r5   r¬   r   r   r´   rf   r¡   )rV   rÑ   r<   r=   rW   r$   r@   ÚXAr·   r¸   r¹   rº   r»   r¼   s                 r'   Ú#test_sparse_preprocess_data_offsetsrÕ   ô  s]  € ä
�)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JÜ�‰�I˜z°3ÀSÔI€AÙ�aÓ€AØ�‰�Ó€AØ	
�‰‹€Bä/?Ø	ˆ1˜Eô0Ñ,€BˆˆF�F˜G Wô ˜f¤b§h¡h¨zÓ&:Ô;Ü˜f aÔ(Ü˜g¤r§w¡w¨zÓ':Ô;Øˆ?Ðˆ?Ü˜bŸj™j›l¨BÔ/Ü˜b !Ô$ä/?Ø	ˆ1˜Dô0Ñ,€BˆˆF�F˜G Wô ˜f¤b§g¡g¨b°qÔ&9Ô:Ü˜f¤b§g¡g¨a°aÔ&8Ô9Ü˜g¤r§w¡w¨zÓ':Ô;Øˆ?Ðˆ?Ü˜bŸj™j›l¨BÔ/Ü˜b !¤b§g¡g¨a°aÔ&8Ñ"8Õ9r)   c                 óŠ   — t        «       \  }}d||dk  <    | |«      }t        ||d¬«      \  }}}}}}|j                  dk(  sJ ‚y )Nr†   ç      @Tr/   Úcsr)r   r   Úformat)rƒ   r$   r@   rØ   Úcsr_rÀ   s         r'   Útest_csr_preprocess_datarÛ     sT   € ô Ó�D€A€qØ€A€aˆ#�g�JÙ
˜Ó
€CÜ*¨3°ÀÔFÑ€Dˆ!ˆQ��1�aØ�;‰;˜%ÒÐÑr)   Úto_copy)TFÚuse_sample_weight)FTc                 ó®  — t        «       \  }}d||dk  <   |rt        j                  t        |«      «      nd }| � | |«      }t	        |||d|d¬«      \  }}}}}}| �^|s|r,t        j
                  |j                  |j                  «      r/J ‚t        j
                  |j                  |j                  «      sJ ‚y y t        j
                  ||«      | k(  sJ ‚y )Nr†   r×   TF)rO   r0   r«   Úcheck_input)r   r2   rf   Úlenr   Úmay_share_memoryÚdata)	rF   rÜ   rÝ   r$   r@   rO   ÚX_Úy_rÀ   s	            r'   Ú#test_preprocess_copy_data_no_checksrå     sÙ   € ô Ó�D€A€qØ€A€aˆ#�g�Já'8”B—G‘GœC ›F”O¸d€MàÐ#Ù˜QÓˆä)Ø	Ø	Ø#ØØØôÑ€BˆˆAˆq�!�Qð Ð#ÙÑ'ä×*Ñ*¨2¯7©7°A·F±FÔ;Ð;Ð;ä×&Ñ& r§w¡w°·±Ô7Ð7Ñ7ð <ô ×"Ñ" 2 qÓ)°'¨kÒ:Ð:Ñ:r)   c                 ó²
  — t         j                  j                  |«      }d}d}|j                  ||«      }|j                  |«      }|j                  |«      dz   }t        j                  |t         j
                  ¬«      }	t        j                  |t         j
                  ¬«      }
t        j                  |t         j
                  ¬«      }t        j                  |t         j                  ¬«      }t        j                  |t         j                  ¬«      }t        j                  |t         j                  ¬«      }t        |	|
||| ¬«      \  }}}}}}t        ||||| ¬«      \  }}}}}}t        |	|||| ¬«      \  }}}}}} t        ||
||| ¬«      \  }!}"}#}$}%}&|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚| r|j                  t         j
                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚| r|j                  t         j                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚| r| j                  t         j
                  k(  sJ ‚|!j                  t         j                  k(  sJ ‚|"j                  t         j                  k(  sJ ‚|#j                  t         j                  k(  sJ ‚|$j                  t         j                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚| r|&j                  t         j                  k(  sJ ‚|	j                  t         j
                  k(  sJ ‚|
j                  t         j
                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚t        ||dd¬«       t        ||dd¬«       t        ||d¬	«       t        ||d¬	«       t        ||«       | rt        ||d¬	«       y y )
Nr…   r   r   ©r*   rÅ   r    r   )ÚrtolÚatol©rè   )
r2   r3   r4   r5   ÚasarrayÚfloat32Úfloat64r   r*   r   )'rÂ   r0   rV   r<   r=   rW   r$   r@   ÚswÚX_32Úy_32Úsw_32ÚX_64Úy_64Úsw_64ÚXt_32Úyt_32Ú	X_mean_32Ú	y_mean_32Ú
X_scale_32Ú
sqrt_sw_32ÚXt_64Úyt_64Ú	X_mean_64Ú	y_mean_64Ú
X_scale_64Ú
sqrt_sw_64ÚXt_3264Úyt_3264ÚX_mean_3264Úy_mean_3264ÚX_scale_3264Úsqrt_sw_3264ÚXt_6432Úyt_6432ÚX_mean_6432Úy_mean_6432ÚX_scale_6432Úsqrt_sw_6432s'                                          r'   Útest_dtype_preprocess_datar  <  sT  € ô �)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JØ�‰�˜JÓ'€AØ�‰�Ó€AØ	�‰�)Ó	˜qÑ	 €Bä�:‰:�aœrŸz™zÔ*€DÜ�:‰:�aœrŸz™zÔ*€DÜ�J‰J�r¤§¡Ô,€EÜ�:‰:�aœrŸz™zÔ*€DÜ�:‰:�aœrŸz™zÔ*€DÜ�J‰J�r¤§¡Ô,€EäAQØØØ#ØØ'ôBÑ>€Eˆ5�)˜Y¨
°Jô BRØØØ#ØØ'ôBÑ>€Eˆ5�)˜Y¨
°Jô 	ØØØ'ØØ+ô	
ñ K€GˆW�k ;°¸lô 	ØØØ'ØØ+ô	
ñ K€GˆW�k ;°¸lð �;‰;œ"Ÿ*™*Ò$Ð$Ð$Ø�;‰;œ"Ÿ*™*Ò$Ð$Ð$Ø�?‰?œbŸj™jÒ(Ð(Ð(Ø�?‰?œbŸj™jÒ(Ð(Ð(Ø×ÑœrŸz™zÒ)Ð)Ð)ÙØ×Ñ¤2§:¡:Ò-Ð-Ð-à�;‰;œ"Ÿ*™*Ò$Ð$Ð$Ø�;‰;œ"Ÿ*™*Ò$Ð$Ð$Ø�?‰?œbŸj™jÒ(Ð(Ð(Ø�?‰?œbŸj™jÒ(Ð(Ð(Ø×ÑœrŸz™zÒ)Ð)Ð)ÙØ×Ñ¤2§:¡:Ò-Ð-Ð-à�=‰=œBŸJ™JÒ&Ð&Ð&Ø�=‰=œBŸJ™JÒ&Ð&Ð&Ø×Ñ¤§
¡
Ò*Ð*Ð*Ø×Ñ¤§
¡
Ò*Ð*Ð*Ø×Ñ¤§¡Ò+Ð+Ð+ÙØ×!Ñ!¤R§Z¡ZÒ/Ð/Ð/à�=‰=œBŸJ™JÒ&Ð&Ð&Ø�=‰=œBŸJ™JÒ&Ð&Ð&Ø×Ñ¤§
¡
Ò*Ð*Ð*Ø×Ñ¤§
¡
Ò*Ð*Ð*Ø×Ñ¤§¡Ò+Ð+Ð+ÙØ×!Ñ!¤R§Z¡ZÒ/Ð/Ð/à�:‰:œŸ™Ò#Ð#Ð#Ø�:‰:œŸ™Ò#Ð#Ð#Ø�:‰:œŸ™Ò#Ð#Ð#Ø�:‰:œŸ™Ò#Ð#Ð#ä�E˜5 t°$Õ7Ü�E˜5 t°$Õ7Ü�I˜y¨tÕ4Ü�I˜y¨tÕ4Ü�J 
Ô+ÙÜ˜
 J°TÖ:ð r)   c                  óî  — t        ddd¬«      \  } }t        j                  ddgddgd	d
ggt        j                  ¬«      }t        j                  g d¢t        j                  ¬«      }| j                  ||¬«      }| j                  ||¬«      }t	        d¬«      5  t        ||dd¬«      ^}}}d d d «       j                  | j                  k(  sJ ‚j                  | j                  k(  sJ ‚y # 1 sw Y   Œ@xY w)NÚtorchÚmpsrì   )Údevice_nameÚ
dtype_namer   r   rk   r¥   rI   rH   rç   )r   r   r¥   )ÚdeviceT©Úarray_api_dispatch)r0   rß   )r   r2   rë   Úint64r   r   r*   rì   )	Úxpr  ÚX_npÚy_npÚX_xpÚy_xpÚX_outÚy_outrÀ   s	            r'   Ú=test_preprocess_data_integer_array_api_on_float32_only_devicer  Ÿ  sÚ   € Ü% g¸5ÈYÔW�J€Bˆô �:‰:˜˜1�v  1˜v¨¨1 vÐ.´b·h±hÔ?€DÜ�:‰:’i¤r§x¡xÔ0€DØ�:‰:�d 6ˆ:Ó*€DØ�:‰:�d 6ˆ:Ó*€Dä	¨4Ô	0ñ 
Ü+Ø�$ d¸ô
Ðˆˆu�q÷
ð
 �;‰;˜"Ÿ*™*Ò$Ð$Ð$Ø�;‰;˜"Ÿ*™*Ò$Ð$Ñ$÷
ð 
ús   ÂC+Ã+C4Ú	n_targetsr   c                 ó°  — t         j                  j                  |«      }d}d}d|j                  |«      z   }|j                  ||«      }| €|j                  |«      }n|j                  || «      }t        j                  |«      }	||	d d …t         j
                  f   z  }
| €||	z  }n||	d d …t         j
                  f   z  }|�+ ||«      }| € ||j                  dd«      «      }n ||«      }t        |||«      \  }}}t        ||	«       |�2|j                  «       }|j                  «       }| €|j                  «       }t        ||
«       t        ||«       y )Nr…   r   rL   éÿÿÿÿr   )r2   r3   r4   r5   rÊ   ÚnewaxisÚreshaper   r   r¬   r~   )r  rF   rV   r<   r=   rW   rO   r$   r@   Úexpected_sqrt_swÚexpected_rescaled_XÚexpected_rescaled_yÚ
rescaled_XÚ
rescaled_yr¼   s                  r'   Útest_rescale_datar)  ²  s^  € ô �)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€Jà˜#Ÿ(™( 9Ó-Ñ-€MØ�‰�˜JÓ'€AØÐØ�H‰H�YÓ‰à�H‰H�Y 	Ó*ˆä—w‘w˜}Ó-ÐØÐ.ªq´"·*±*¨}Ñ=Ñ=ÐàÐØÐ"2Ñ2ÑàÐ"2²1´b·j±j°=Ñ"AÑAÐàÐ#Ù˜QÓˆØÐÙ  §¡¨2¨qÓ!1Ó2‰Aá  Ó#ˆAä&3°A°q¸-Ó&HÑ#€J�
˜Gä�GÐ-Ô.àÐ#Ø×'Ñ'Ó)ˆ
Ø×'Ñ'Ó)ˆ
ØÐØ#×)Ñ)Ó+ˆJä�JÐ 3Ô4Ü�JÐ 3Õ4r)   c                 óX  — t        «       }|j                  j                  t        j                  «      }|j
                  j                  t        j                  «      } | |«      }t        j                  |j                  t        j                  ¬«      }|j                  j                  t        j                  «      }|j
                  j                  t        j                  «      } | |«      }t        j                  |j                  t        j                  ¬«      }	t        |||«      \  }
}t        |||	«      \  }}|
j                  «       \  }}}}|j                  «       \  }}}}|\  }}}|\  }}}|j                  t        j                  k(  sJ ‚|j                  t        j                  k(  sJ ‚t        ||t        ¬«       t        |||«      \  }}t        |||	«      \  }}|j                  «       \  }}}}|j                  «       \  }}}}|\  }}}|\  }}}|j                  t        j                  k(  sJ ‚|j                  t        j                  k(  sJ ‚t        ||t        ¬«       t        ||t        ¬«       t        ||«       t        ||«       t        ||«       t        ||«       y )Nrç   rê   )r   râ   r7   r2   rì   ÚtargetÚarangerK   rí   r   Ú_next_pyr*   r   rè   r   )rƒ   Úirisrï   rð   ÚX_csr_32Úsample_weight_32rò   ró   ÚX_csr_64Úsample_weight_64Ú
dataset_32rÀ   Ú
dataset_64Úxi_32Úyi_32Úxi_64Úyi_64Ú
xi_data_32Ú
xi_data_64Údatasetcsr_32Údatasetcsr_64Úxicsr_32Úyicsr_32Úxicsr_64Úyicsr_64Úxicsr_data_32Úxicsr_data_64s                              r'   Útest_fused_types_make_datasetrC  Ý  s9  € ä‹;€Dà�9‰9×ÑœBŸJ™JÓ'€DØ�;‰;×ÑœbŸj™jÓ)€DÙ˜TÓ"€HÜ—y‘y §¡´"·*±*Ô=Ðà�9‰9×ÑœBŸJ™JÓ'€DØ�;‰;×ÑœbŸj™jÓ)€DÙ˜TÓ"€HÜ—y‘y §¡´"·*±*Ô=Ðô !  tÐ-=Ó>�M€J�Ü   tÐ-=Ó>�M€J�Ø#×,Ñ,Ó.Ñ€Eˆ5�!�QØ#×,Ñ,Ó.Ñ€Eˆ5�!�QØÑ€J��1ØÑ€J��1à×ÑœrŸz™zÒ)Ð)Ð)Ø×ÑœrŸz™zÒ)Ð)Ð)Ü�E˜5¤tÕ,ô $ H¨dÐ4DÓEÑ€M�1Ü# H¨dÐ4DÓEÑ€M�1Ø,×5Ñ5Ó7Ñ€Hˆh˜˜1Ø,×5Ñ5Ó7Ñ€Hˆh˜˜1Ø"Ñ€M�1�aØ"Ñ€M�1�aà×Ñ¤"§*¡*Ò,Ð,Ð,Ø×Ñ¤"§*¡*Ò,Ð,Ð,ä�M =´tÕ<Ü�H˜h¬TÕ2ä�z =Ô1Ü�z =Ô1Ü�u˜hÔ'Ü�u˜hÕ'r)   ÚX_shape)©ra   rI   )ra   é   )r}   r}   z/Known to fail for CSR arrays, see issue #30131.)Úreason)Úmarksc                 ó„  — t         j                  j                  |«      }| \  }}|j                  ||«      }|j                  |«      }|� ||«      }t	        |¬«      }	t        di |	¤Žj                  ||d¬«      }
|
j                  j                  «       }|r|
j                  }t        j                  |«      }|
j                  |||¬«       t        |
j                  |d¬«       |rt        |
j                  «       d}|
j                  |||¬«       t        |
j                  |d¬«       |rt        |
j                  «       |j                  dd|j                  d	   ¬
«      }|
j                  |||¬«      }
|
j                  j                  «       }|r|
j                  }|
j                  ||t         j                  |z  ¬«       t        |
j                  ||€dnd¬«       |rt        |
j                  «       |j                  «       }d	|dd |ddxxx dz  ccc |
j                  |||¬«       |
j                  j                  «       }|r|
j                  }|
j                  |dd |dd |dd ¬«       t        |
j                  |d¬«       |rt        |
j                  «       |� t        j                   ||d|dz   gd¬«      }nt        j"                  ||d|dz   gd	¬«      }t        j"                  ||d|dz   g«      }|j                  «       }|d|dz  xxx dz  ccc t        j"                  ||d|dz   gd	¬«      }t        di |	¤Žj                  |||¬«      }t        di |	¤Žj                  |||¬«      }t        |j                  |j                  d¬«       |r!t        |j                  |j                  «       yy)zõTest that the impact of sample_weight is consistent.

    Note that this test is stricter than the common test
    check_sample_weight_equivalence alone and also tests sparse X.
    It is very similar to test_enet_sample_weight_consistency.
    Nr/   rN   r   rê   g     À^@g{®Gáz„?r   r   )ÚlowÚhighrK   gñhãˆµøä>éûÿÿÿiè  Úcsc)rÙ   r²   r‡   )r2   r3   r4   r5   rˆ   r
   r    r!   r«   r"   Ú	ones_liker   rQ   rR   Úpir   r“   Úconcatenate)rD  rF   r0   rV   r<   r=   rW   r$   r@   rŠ   r&   ÚcoefÚ	interceptrO   Úsample_weight_0Úcoef_0Úintercept_0ru   Úy2Úsample_weight_1Úsample_weight_2Úreg1Úreg2s                          r'   Ú0test_linear_regression_sample_weight_consistencyr[    sd  € ô0 �)‰)×
Ñ
Ð 2Ó
3€CØ#Ñ€Iˆzà�‰�˜JÓ'€AØ�‰�Ó€AØÐ#Ù˜QÓˆÜ Ô.€Fä
Ñ
$˜VÑ
$×
(Ñ
(¨¨A¸TÐ
(Ó
B€CØ�9‰9�>‰>Ó€DÙØ—N‘Nˆ	ô
 —L‘L “O€MØ‡G�GˆAˆq €GÔ.Ü�C—I‘I˜t¨$Õ/ÙÜ˜Ÿ™¨	Ô2ð €MØ‡G�GˆAˆq €GÔ.Ü�C—I‘I˜t¨$Õ/ÙÜ˜Ÿ™¨	Ô2ð —K‘K D¨q°q·w±w¸q±z�KÓB€MØ
�'‰'�!�Q mˆ'Ó
4€CØ�9‰9�>‰>Ó€DÙØ—N‘Nˆ	à‡G�GˆAˆq¤§¡¨Ñ 5€GÔ6Ü�C—I‘I˜tÐ2BÐ2J©$ÐPTÕUÙÜ˜Ÿ™¨	Ô2ð $×(Ñ(Ó*€OØ€O�B�CÐØ€b€cƒFˆd�NƒFØ‡G�GˆAˆq €GÔ0Ø�Y‰Y�^‰^Ó€FÙØ—n‘nˆØ‡G�GˆAˆcˆrˆF�A�c�r�F¨-¸¸Ð*<€GÔ=Ü�C—I‘I˜v¨DÕ1ÙÜ˜Ÿ™¨Ô4ð Ð#Ü�]‰]˜A˜qÐ!1 9°¡>Ð2Ð3¸EÔB‰ä�^‰^˜Q Ð"2 I°¡NÐ 3Ð4¸1Ô=ˆÜ	�‰˜˜AÐ. 	¨Q¡Ð/Ð0Ó	1€BØ#×(Ñ(Ó*€OØÐ$�i 1‘nÓ%¨Ñ*Ó%Ü—n‘nØ	˜Ð&6¨	°Q©Ð7Ð8¸qô€Oô Ñ%˜fÑ%×)Ñ)¨!¨Q¸oÐ)ÓN€DÜÑ%˜fÑ%×)Ñ)¨"¨bÀÐ)ÓP€DÜ�D—J‘J §
¡
°Õ6ÙÜ˜Ÿ™¨¯©Õ9ð r)   c                  óJ  — t        j                  d«      } t        j                  j	                  d«      }|j                  d¬«      }|j                  d¬«      }t        «       j                  ||«      }| j                  |«      }|j                  |«       t        d¬«      5  t        j                  t        d¬	«      5  |j                  |«       d d d «       t        |«      \  }}}t        |||«      }|j                  |«       d d d «       y # 1 sw Y   Œ?xY w# 1 sw Y   y xY w)
NÚarray_api_strictr   rE  rJ   ra   Tr  z.*must use the same namespacerd   )r:   Úimportorskipr2   r3   Údefault_rngrP   r
   r    rë   r#   r   rg   Ú
ValueErrorr   r   )	r  r<   r$   r@   r&   r  Ú	xp_targetrÀ   r  s	            r'   Ú test_array_api_move_estimator_torb  n  sò   € ä	×	Ñ	Ð/Ó	0€BÜ
�)‰)×
Ñ
 Ó
"€CØ�
‰
˜ˆ
Ó €AØ�
‰
˜ˆ
Ó€Aä
Ó
×
 Ñ
   AÓ
&€CØ�:‰:�a‹=€DØ‡K�K�Ôä	¨4Ô	0ñ Ü�]‰]œ:Ð-LÔMñ 	Ø�K‰K˜Ô÷	ä7¸Ó=Ñˆ	�1�fÜ  Y°Ó7ˆØ�‰�DÔ÷ð ÷	ð 	ú÷ð ús$   Â!DÂ=DÃ5DÄD	ÄDÄD"c                  óê   —  G d„ dt         t        «      }  | «       }|j                  dd¬«       |j                  t	        j
                  d«      «      }t        t	        j                  |d¬«      d«       y)z~Test that _predict_proba_lr of LinearClassifierMixin deals with large
    negative values.

    Note that exp(-1000) = 0.
    c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ú:test_predict_proba_lr_large_values.<locals>.MockClassifierc                  ó   — y )Nr‡   )Úselfs    r'   Ú__init__zCtest_predict_proba_lr_large_values.<locals>.MockClassifier.__init__‰  s   € Ør)   c                 ó   — d| _         y )NT)Ú__sklearn_is_fitted__)rg  r$   r@   s      r'   r    z>test_predict_proba_lr_large_values.<locals>.MockClassifier.fitŒ  s
   € Ø)-ˆDÕ&r)   c                 óX   — |j                   d   }t        j                  dgdz  |dg«      S )Nr   g     @�Àr¥   r   )rR   r2   Útile)rg  r$   r=   s      r'   Údecision_functionzLtest_predict_proba_lr_large_values.<locals>.MockClassifier.decision_function�  s*   € ØŸ™ ™
ˆIÜ—7‘7˜G˜9 q™=¨9°a¨.Ó9Ð9r)   N)Ú__name__Ú
__module__Ú__qualname__rh  r    rm  r‡   r)   r'   ÚMockClassifierre  ˆ  s   „ ò	ò	.ó	:r)   rq  N)r$   r@   rI   r   r²   )r   r   r    Ú_predict_proba_lrr2   rf   r   rË   )rq  ÚclfÚprobas      r'   Ú"test_predict_proba_lr_large_valuesru  �  sX   € ô	:Ô.´ô 	:ñ Ó
€CØ‡G�Gˆd�d€GÔà×!Ñ!¤"§'¡'¨!£*Ó-€EÜ”B—F‘F˜5 qÔ)¨1Õ-r)   )IÚnumpyr2   r:   Úscipyr   r   Úsklearnr   Úsklearn.baser   Úsklearn.datasetsr   r   r	   Úsklearn.linear_modelr
   Úsklearn.linear_model._baser   r   r   r   Úsklearn.preprocessingr   Úsklearn.utils._array_apir   r   Úsklearn.utils._testingr   r   r   r   r   Úsklearn.utils.fixesr   r   r   r   r   rè   r(   ÚmarkÚparametrizerí   rì   rE   r_   rj   rq   r{   r‚   r�   r–   r™   r›   rž   r£   r¦   r°   r½   rÁ   rÐ   rÕ   rÛ   rå   r  r  r)  rC  ÚparamÚxfailr[  rb  ru  )Ú	containers   0r'   ú<module>r†     s–  ðó Û ß  å "Ý &ß QÑ QÝ 1÷ó õ 4ß P÷õ ÷õ ð €ò3ð0 ‡�×Ñ˜ 2§:¡:¨r¯z©zÐ":Ó;ñ?ó <ð?ð0 ‡�×ÑÐ+¨d¨V°nÑ-DÓEØ‡�×Ñ˜¨4°¨-Ó8ñ$+ó 9ó Fð$+òN	ð ‡�×ÑÐ0°6¸6Ð2BÓCñ'ó Dð'ò"Pò&=ð ‡�×Ñ˜¨4°¨-Ó8Ø‡�×Ñ˜¨.Ó9ñ7ó :ó 9ð7ò$Pð" ‡�×Ñ˜¨.Ó9ñPó :ðPò")ò.;ò"
9ò9ð" ‡�×ÑÐ+¨d¨V°nÑ-DÓEØ‡�×Ñ˜ D¨% =Ó1ñ39ó 2ó Fð39òl7ð< ‡�×ÑÐ+¨d¨V°nÑ-DÓEñ.ó Fð.ð* ‡�×ÑÐ*¨U°D¨MÓ:Ø‡�×ÑÐ+¨d¨V°nÑ-DÓEñF1ó Fó ;ðF1ðR ‡�×Ñ˜¨.Ó9ñ:ó :ð:ð< ‡�×Ñ˜¨.Ó9ñ ó :ð ð ‡�×ÑÐ+¨d¨V°nÑ-DÓEØ‡�×Ñ˜ MÓ2Ø‡�×ÑÐ,¨mÓ<ñ;ó =ó 3ó Fð;ð8 ‡�×ÑÐ*¨U°D¨MÓ:Ø‡�×Ñ˜¨5°$¨-Ó8ñ^;ó 9ó ;ð^;òB%ð& ‡�×Ñ˜ t¨Q iÓ0Ø‡�×ÑÐ+¨d¨V°nÑ-DÓEñ&5ó Fó 1ð&5ðR ‡�×Ñ˜¨.Ó9ñ*(ó :ð*(ðZ ‡�×Ñ˜Ò$CÓDØ‡�×ÑØØ	€Fð (öð ð 	ˆ�‰ØØ—+‘+×#Ñ#ØHð $ó ö	
òñ	óð ‡�×Ñ˜¨5°$¨-Ó8ñQ:ó 9óó EðQ:ðh )ñó )ðó$.ùòes   Ï5Q