§
    ¨éUgëÌ  ã                   óT  — 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 dlmZ 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mZmZmZmZmZ d dl m!Z!m"Z"m#Z# d dl$m%Z% d dl&m'Z' d dl(m)Z)m*Z*m+Z+m,Z, d dl-m.Z.m/Z/m0Z0m1Z1 dZ2dZ3e2e3z   Z4d„ Z5d„ Z6d„ Z7d„ Z8d„ Z9d„ Z:ej;         <                    deef¦  «        d„ ¦   «         Z=d„ Z>d„ Z?d„ Z@d„ ZAd„ ZBd„ ZCd „ ZDd!„ ZEd"„ ZFd#„ ZGd$„ ZHd%„ ZId&„ ZJd'„ ZKd(„ ZLd)„ ZMd*„ ZNej;         O                    e/d+¬,¦  «        d-„ ¦   «         ZPd.„ ZQd/„ ZRd0„ ZSe+d1„ ¦   «         ZTd2„ ZUej;         <                    deef¦  «        d3„ ¦   «         ZVd4„ ZWd5„ ZXd6„ ZYd7„ ZZe+d8„ ¦   «         Z[ej;         <                    deef¦  «        d9„ ¦   «         Z\d:„ Z]d;„ Z^d<„ Z_e+d=„ ¦   «         Z`d>„ Zad?„ Zbej;         <                    d@ejc        ejd        eje        g¦  «        dA„ ¦   «         ZfdB„ ZgdC„ ZhdD„ ZidE„ ZjdF„ ZkdG„ ZldH„ Zme+dI„ ¦   «         ZndJ„ ZodK„ ZpdL„ Zqej;         <                    deeef¦  «        dM„ ¦   «         Zrej;         <                    dNejs        ejt        g¦  «        dO„ ¦   «         Zuej;         <                    dP ee0e1¦  «        ¦  «        dQ„ ¦   «         Zvej;         <                    dRejw        ejt        dSfejx        ejt        dSfejs        ejs        dTfejt        ejt        dTfg¦  «        dU„ ¦   «         Zyej;         <                    dV edW¬X¦  «         edW¬X¦  «         edW¬X¦  «        g¦  «        dY„ ¦   «         ZzdZ„ Z{e+d[„ ¦   «         Z|e,ej;         <                    d\e1¦  «        d]„ ¦   «         ¦   «         Z}e+ej;         <                    d^eeeg¦  «        d_„ ¦   «         ¦   «         Z~ej;         <                    d^eeeg¦  «        ej;         <                    d`daedbfdce€ddfg¦  «        de„ ¦   «         ¦   «         Z�ej;         <                    d^ee ej‚        ee+¬f¦  «        g¦  «        ej;         <                    dgdh„ di„ g¦  «        ej;         <                    djdcdag¦  «        dk„ ¦   «         ¦   «         ¦   «         Zƒej;         <                    d^eeeg¦  «        dl„ ¦   «         Z„ej;         <                    deeeg¦  «        ej;         <                    dmdndogdddpddqdrdsdtf	ddu„ ddpddqdvdsdtf	ddw„ ddpdxdydzdvd{f	ddd|„ dpdxd}„ d~dsdf	dddd€dd�„ d‚dsdf	dƒg¦  «        d„„ ¦   «         ¦   «         Z…ej;         <                    d…ed†d‡dˆœd‰d†dŠœgfee2ff¦  «        d‹„ ¦   «         Z†dŒ„ Z‡e+d�„ ¦   «         Zˆej;         <                    d^eeeeg¦  «        dŽ„ ¦   «         Z‰ej;         <                    d\e1¦  «        d�„ ¦   «         ZŠdS )�é    N)Údefaultdict)ÚMapping)Úpartial)ÚStringIO)Úproduct)Úassert_array_almost_equalÚassert_array_equal)Úsparse)Úclone)ÚENGLISH_STOP_WORDSÚCountVectorizerÚHashingVectorizerÚTfidfTransformerÚTfidfVectorizerÚstrip_accents_asciiÚstrip_accents_unicodeÚ
strip_tags)ÚGridSearchCVÚcross_val_scoreÚtrain_test_split)ÚPipeline)Ú	LinearSVC)Úassert_allclose_dense_sparseÚassert_almost_equalÚfails_if_pypyÚskip_if_32bit)Ú_IS_PYPYÚ_IS_WASMÚCSC_CONTAINERSÚCSR_CONTAINERS)zthe pizza pizza beer copyrightzthe pizza burger beer copyrightz!the the pizza beer beer copyrightzthe burger beer beer copyrightzthe coke burger coke copyrightzthe coke burger burger)zthe salad celeri copyrightz)the salad salad sparkling water copyrightzthe the celeri celeri copyrightzthe tomato tomato salad waterz the tomato salad water copyrightc                 óD   — t          | ¦  «                             ¦   «         S ©N)r   Úupper©Úss    úi/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/sklearn/feature_extraction/tests/test_text.pyÚ	uppercaser'   9   s   € Ý  Ñ#Ô#×)Ò)Ñ+Ô+Ð+ó    c                 ó.   — |                       dd¦  «        S )Nõ   Ã©Úe)Úreplacer$   s    r&   Ústrip_eacuter-   =   s   € Ø�9Š9�T˜3ÑÔÐr(   c                 ó*   — |                       ¦   «         S r"   ©Úsplitr$   s    r&   Úsplit_tokenizer1   A   s   € Ø�7Š7‰9Œ9Ðr(   c                 ó   — dgS )NÚthe_ultimate_feature© r$   s    r&   Úlazy_analyzer5   E   s   € Ø"Ð#Ð#r(   c                  ód  — d} d}t          | ¦  «        |k    sJ ‚d} d}t          | ¦  «        |k    sJ ‚d} d}t          | ¦  «        |k    sJ ‚d} d}t          | ¦  «        |k    sJ ‚d	} d
}t          | ¦  «        |k    sJ ‚d} d}t          | ¦  «        |k    sJ ‚d} d
}t          | ¦  «        |k    sJ ‚d S )Nõ   Ã Ã¡Ã¢Ã£Ã¤Ã¥Ã§Ã¨Ã©ÃªÃ«Úaaaaaaceeeeõ   Ã¬Ã­Ã®Ã¯Ã±Ã²Ã³Ã´ÃµÃ¶Ã¹ÃºÃ»Ã¼Ã½Úiiiinooooouuuuyõ   Ø¥u   Ø§õ   this is Ã  testúthis is a testu   oÌˆÚou   Ì€Ì�Ì‚ÌƒÚ u   oÌˆÌ„)r   ©ÚaÚexpecteds     r&   Útest_strip_accentsrC   I   s  € à €AØ€HÝ  Ñ#Ô# xÒ/Ð/Ð/Ð/à(€AØ €HÝ  Ñ#Ô# xÒ/Ð/Ð/Ð/ð 	€AØ€HÝ  Ñ#Ô# xÒ/Ð/Ð/Ð/ð 	€AØ€HÝ  Ñ#Ô# xÒ/Ð/Ð/Ð/ð 	€AØ€HÝ  Ñ#Ô# xÒ/Ð/Ð/Ð/ð 	#€AØ€HÝ  Ñ#Ô# xÒ/Ð/Ð/Ð/ð 	€AØ€HÝ  Ñ#Ô# xÒ/Ð/Ð/Ð/Ð/Ð/r(   c                  óÎ   — d} d}t          | ¦  «        |k    sJ ‚d} d}t          | ¦  «        |k    sJ ‚d} d}t          | ¦  «        |k    sJ ‚d} d}t          | ¦  «        |k    sJ ‚d S )	Nr7   r8   r9   r:   r;   r?   r<   r=   )r   r@   s     r&   Útest_to_asciirE   m   s˜   € à €AØ€HÝ˜qÑ!Ô! XÒ-Ð-Ð-Ð-à(€AØ €HÝ˜qÑ!Ô! XÒ-Ð-Ð-Ð-ð 	€AØ€HÝ˜qÑ!Ô! XÒ-Ð-Ð-Ð-ð 	€AØ€HÝ˜qÑ!Ô! XÒ-Ð-Ð-Ð-Ð-Ð-r(   Ú
Vectorizerc                 ó  —  | d¬¦  «                              ¦   «         }d}g d¢} ||¦  «        |k    sJ ‚d}g d¢} ||¦  «        |k    sJ ‚ | d¬¦  «                              ¦   «         }t          d	¦  «        }g d
¢} ||¦  «        |k    sJ ‚ | t          ¬¦  «                              ¦   «         }d}g d¢} ||¦  «        |k    sJ ‚ | t          d¬¦  «                              ¦   «         }d}g d¢} ||¦  «        |k    sJ ‚d S )NÚascii©Ústrip_accentsõ:   J'ai mangÃ© du kangourou  ce midi, c'Ã©tait pas trÃ¨s bon.)
ÚaiÚmangeÚduÚ	kangourouÚceÚmidiÚetaitÚpasÚtresÚbonz0This is a test, really.

 I met Harry yesterday.)ÚthisÚisÚtestÚreallyÚmetÚharryÚ	yesterdayÚfile)Úinputú'This is a test with a file-like object!)rV   rW   rX   Úwithr]   ÚlikeÚobject©Úpreprocessoru;   J'ai mangÃ© du kangourou  ce midi,  c'Ã©tait pas trÃ¨s bon.)
ÚAIÚMANGEÚDUÚ	KANGOUROUÚCEÚMIDIÚETAITÚPASÚTRESÚBON)Ú	tokenizerrJ   )
zj'airM   rN   rO   rP   zmidi,zc'etaitrS   rT   zbon.)Úbuild_analyzerr   r'   r1   )rF   ÚwaÚtextrB   s       r&   Útest_word_analyzer_unigramsrs   ‚   st  € à	ˆ 'Ð	*Ñ	*Ô	*×	9Ò	9Ñ	;Ô	;€BØG€Dðð ð €Hð ˆ2ˆd‰8Œ8�xÒÐÐÐà?€DØLÐLÐL€HØˆ2ˆd‰8Œ8�xÒÐÐÐà	ˆ˜&Ð	!Ñ	!Ô	!×	0Ò	0Ñ	2Ô	2€BÝÐ=Ñ>Ô>€DØGÐGÐG€HØˆ2ˆd‰8Œ8�xÒÐÐÐð 
ˆ¥Ð	+Ñ	+Ô	+×	:Ò	:Ñ	<Ô	<€BØH€Dðð ð €Hð ˆ2ˆd‰8Œ8�xÒÐÐÐð 
ˆ�n¸GÐ	DÑ	DÔ	D×	SÒ	SÑ	UÔ	U€BØG€Dðð ð €Hð ˆ2ˆd‰8Œ8�xÒÐÐÐÐÐr(   c                  ó|   — t          ddd¬¦  «                             ¦   «         } d}g d¢} | |¦  «        |k    sJ ‚d S )NÚwordÚunicode©é   é   ©ÚanalyzerrJ   Úngram_rangerK   )rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   zai mangezmange duzdu kangourouzkangourou cezce midiz
midi etaitz	etait paszpas tresztres bon)r   rp   )rq   rr   rB   s      r&   Ú'test_word_analyzer_unigrams_and_bigramsr}   À   se   € Ý	Ø y¸fð
ñ 
ô 
ç‚nÑÔð ð H€Dðð ð €Hð* ˆ2ˆd‰8Œ8�xÒÐÐÐÐÐr(   c                  ó´  — d} |                       d¦  «        }t          dd¬¦  «                             ¦   «         }t          j        t
          ¦  «        5   ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          ddd¬¦  «                             ¦   «         }t          j        t
          ¦  «        5   ||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	NrK   zutf-8rw   rH   )r|   ÚencodingÚchar©é   é   )r{   r|   r   )Úencoder   rp   ÚpytestÚraisesÚUnicodeDecodeError)rr   Ú
text_bytesrq   Úcas       r&   Útest_unicode_decode_errorrŠ   Þ   s]  € ð H€DØ—’˜WÑ%Ô%€Jõ 
 V°gÐ	>Ñ	>Ô	>×	MÒ	MÑ	OÔ	O€BÝ	ŒÕ)Ñ	*Ô	*ð ð Ø
ˆˆ:‰Œˆðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 
Ø V°gð
ñ 
ô 
ç‚nÑÔð õ 
ŒÕ)Ñ	*Ô	*ð ð Ø
ˆˆ:‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s$   ÁA,Á,A0Á3A0Â4CÃCÃCc                  óÞ  — t          ddd¬¦  «                             ¦   «         } d}g d¢} | |¦  «        d d…         |k    sJ ‚g d¢} | |¦  «        d	d …         |k    sJ ‚d
}g d¢} | |¦  «        d d…         |k    sJ ‚g d¢} | |¦  «        d	d …         |k    sJ ‚t          ddd¬¦  «                             ¦   «         } t          d¦  «        }g d¢} | |¦  «        d d…         |k    sJ ‚d S )Nr€   rv   r�   rz   u9   J'ai mangÃ© du kangourou  ce midi, c'Ã©tait pas trÃ¨s bon)zj'az'aizai zi mz maé   )zs tresz tres ztres bzres bozes bonéûÿÿÿú1This 
	is a test, really.

 I met Harry yesterday)ÚthiÚhisúis zs iz is)z yesteÚyesterÚesterdÚsterdaÚterdayr]   ©r^   r{   r|   r_   ©r   rp   r   ©Úcngarr   rB   s      r&   Útest_char_ngram_analyzerrš   ñ   sS  € ÝØ y¸fðñ ô ç‚nÑÔð 	ð G€DØ2Ð2Ð2€HØˆ4�‰:Œ:�b�q�bŒ>˜XÒ%Ð%Ð%Ð%ØAÐAÐA€HØˆ4�‰:Œ:�b�c�cŒ?˜hÒ&Ð&Ð&Ð&àB€DØ2Ð2Ð2€HØˆ4�‰:Œ:�b�q�bŒ>˜XÒ%Ð%Ð%Ð%àAÐAÐA€HØˆ4�‰:Œ:�b�c�cŒ?˜hÒ&Ð&Ð&Ð&åØ˜v°6ðñ ô ç‚nÑÔð 	õ Ð=Ñ>Ô>€DØ2Ð2Ð2€HØˆ4�‰:Œ:�b�q�bŒ>˜XÒ%Ð%Ð%Ð%Ð%Ð%r(   c                  óf  — t          ddd¬¦  «                             ¦   «         } d}g d¢} | |¦  «        d d…         |k    sJ ‚g d¢} | |¦  «        d	d …         |k    sJ ‚t          d
dd¬¦  «                             ¦   «         } t          d¦  «        }g d¢} | |¦  «        d d…         |k    sJ ‚d S )NÚchar_wbrv   r�   rz   rŽ   )z thr�   r�   r‘   z thirŒ   )r’   r“   r”   r•   zerday r�   r]   r–   zA test with a file-like object!)z a z teÚtesÚestzst z tesrƒ   r—   r˜   s      r&   Útest_char_wb_ngram_analyzerrŸ     sö   € ÝØ¨)Àðñ ô ç‚nÑÔð 	ð C€DØ3Ð3Ð3€HØˆ4�‰:Œ:�b�q�bŒ>˜XÒ%Ð%Ð%Ð%àAÐAÐA€HØˆ4�‰:Œ:�b�c�cŒ?˜hÒ&Ð&Ð&Ð&åØ˜y°fðñ ô ç‚nÑÔð 	õ Ð5Ñ6Ô6€DØ:Ð:Ð:€HØˆ4�‰:Œ:�b�q�bŒ>˜XÒ%Ð%Ð%Ð%Ð%Ð%r(   c                  ó`  — t          ddd¬¦  «                             ¦   «         } d}g d¢} | |¦  «        d d…         |k    sJ ‚g d¢} | |¦  «        d	d …         |k    sJ ‚t          d
dd¬¦  «                             ¦   «         }t          |¦  «        } ||¦  «         | |¦  «        k    sJ ‚d S )Nru   rv   r�   rz   rŽ   )zthis is testzis test reallyztest really metr‚   )ztest really met harry yesterdayzthis is test really met harryz"is test really met harry yesterdayéýÿÿÿr]   r–   r—   )r™   rr   rB   Ú	cnga_filer]   s        r&   Útest_word_ngram_analyzerr£     sð   € ÝØ y¸fðñ ô ç‚nÑÔð 	ð C€DØDÐDÐD€HØˆ4�‰:Œ:�b�q�bŒ>˜XÒ%Ð%Ð%Ð%ðð ð €Hð
 ˆ4�‰:Œ:�b�c�cŒ?˜hÒ&Ð&Ð&Ð&åØ˜v°6ðñ ô ç‚nÑÔð õ �D‰>Œ>€DØˆ9�T‰?Œ?˜d˜d 4™jœjÒ(Ð(Ð(Ð(Ð(Ð(r(   c                  óª  — dddœ} t          |                      ¦   «         ¦  «        }t          t          t          t          t          t          ¦  «        fD ]þ} || ¦  «        }t          |¬¦  «        }| 	                    t          ¦  «         t          |t          ¦  «        r|j        | k    sJ ‚nt          |j        ¦  «        |k    sJ ‚|                     t          ¦  «        }|j        d         t!          |¦  «        k    sJ ‚ || ¦  «        }t          |¬¦  «        }|                     |¦  «        }t!          |¦  «        |j        d         k    sJ ‚Œÿd S )Nr   rx   ©ÚpizzaÚbeer©Ú
vocabulary)ÚsetÚkeysÚdictÚlistÚiterr   r   Úintr   ÚfitÚJUNK_FOOD_DOCSÚ
isinstancer   Úvocabulary_Ú	transformÚshapeÚlenÚinverse_transform)ÚvocabÚtermsÚtypÚvÚvectÚXÚinvs          r&   Ú&test_countvectorizer_custom_vocabularyr¿   6  sD  € Ø Ð#Ð#€EÝ�—
’
‘”ÑÔ€Eõ •d�D¥'­+µsÑ";Ô";Ð<ð &ð &ˆØˆC�‰JŒJˆÝ¨!Ð,Ñ,Ô,ˆØ�Š•Ñ Ô Ð Ý�a�Ñ!Ô!ð 	2ØÔ# uÒ,Ð,Ð,Ð,Ð,å�tÔ'Ñ(Ô(¨EÒ1Ð1Ð1Ð1Ø�NŠN�>Ñ*Ô*ˆØŒw�qŒz�S ™ZœZÒ'Ð'Ð'Ð'ØˆC�‰JŒJˆÝ¨!Ð,Ñ,Ô,ˆØ×$Ò$ QÑ'Ô'ˆÝ�3‰xŒx˜1œ7 1œ:Ò%Ð%Ð%Ð%Ð%ð&ð &r(   c                  óD  — ddg} t          dt          | ¬¦  «        fdt          ¦   «         fg¦  «        }|                     t          ¦  «        }t          |j        d         j        ¦  «        t          | ¦  «        k    sJ ‚|j        d         t          | ¦  «        k    sJ ‚d S )Nr¦   r§   Úcountr¨   Útfidfrx   )
r   r   r   Úfit_transformÚALL_FOOD_DOCSrª   Únamed_stepsr³   rµ   r¶   )Úwhat_we_likeÚpiper½   s      r&   Ú/test_countvectorizer_custom_vocabulary_pipelinerÈ   K  s¨   € Ø˜VÐ$€LÝà•o°Ð>Ñ>Ô>Ð?ØÕ&Ñ(Ô(Ð)ð	
ñô €Dð 	×Ò�=Ñ)Ô)€AÝˆtÔ Ô(Ô4Ñ5Ô5½¸\Ñ9JÔ9JÒJÐJÐJÐJØŒ7�1Œ:�˜\Ñ*Ô*Ò*Ð*Ð*Ð*Ð*Ð*r(   c                  óÈ   — dddœ} d}t          j        t          |¬¦  «        5  t          | ¬¦  «        }|                     dg¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r¥   z$Vocabulary contains repeated indices©Úmatchr¨   Úpasta_siziliana©r…   r†   Ú
ValueErrorr   r°   )r¸   Úmsgr¼   s      r&   Ú7test_countvectorizer_custom_vocabulary_repeated_indicesrÐ   X  s³   € Ø Ð#Ð#€EØ
0€CÝ	Œ•z¨Ð	-Ñ	-Ô	-ð &ð &Ý¨%Ð0Ñ0Ô0ˆØ�ŠÐ#Ð$Ñ%Ô%Ð%ð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &ð &ð &s   £'AÁAÁAc                  óÄ   — dddœ} t          j        t          d¬¦  «        5  t          | ¬¦  «        }|                     dg¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrx   ry   r¥   zdoesn't contain indexrÊ   r¨   Úpasta_verdurarÍ   ©r¸   r¼   s     r&   Ú0test_countvectorizer_custom_vocabulary_gap_indexrÔ   `  s®   € Ø Ð#Ð#€EÝ	Œ•zÐ)@Ð	AÑ	AÔ	Að $ð $Ý¨%Ð0Ñ0Ô0ˆØ�Š�/Ð"Ñ#Ô#Ð#ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ð $ð $s   ¡'AÁAÁAc                  óz  — t          ¦   «         } |                      d¬¦  «         |                      ¦   «         t          k    sJ ‚|                      d¬¦  «         t	          j        t          ¦  «        5  |                      ¦   «          d d d ¦  «         n# 1 swxY w Y   |                      d¬¦  «         t	          j        t          ¦  «        5  |                      ¦   «          d d d ¦  «         n# 1 swxY w Y   g d¢}|                      |¬¦  «         |                      ¦   «         t          |¦  «        k    sJ ‚d S )NÚenglish©Ú
stop_wordsÚ_bad_str_stop_Ú_bad_unicode_stop_)ÚsomeÚotherÚwords)r   Ú
set_paramsÚget_stop_wordsr   r…   r†   rÎ   rª   )ÚcvÚstoplists     r&   Útest_countvectorizer_stop_wordsrâ   g  sŸ  € Ý	Ñ	Ô	€BØ‡M‚M˜Y€MÑ'Ô'Ð'Ø×ÒÑÔÕ"4Ò4Ð4Ð4Ð4Ø‡M‚MÐ-€MÑ.Ô.Ð.Ý	Œ•zÑ	"Ô	"ð ð Ø
×ÒÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à‡M‚MÐ1€MÑ2Ô2Ð2Ý	Œ•zÑ	"Ô	"ð ð Ø
×ÒÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð à)Ð)Ð)€HØ‡M‚M˜X€MÑ&Ô&Ð&Ø×ÒÑÔ¥# h¡-¤-Ò/Ð/Ð/Ð/Ð/Ð/s$   Á3BÂBÂBÃC/Ã/C3Ã6C3c                  óp  — t          j        t          d¬¦  «        5  t          g ¬¦  «        } |                      dg¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t          dd¬¦  «        }|                     g d¢¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	Nzempty vocabularyrÊ   r¨   Úfooç      ð?rÖ   )Úmax_dfrØ   )zto be or not to bez
and me toozand so do yourÍ   )r¼   r»   s     r&   Ú%test_countvectorizer_empty_vocabularyrç   v  sL  € Ý	Œ•zÐ);Ð	<Ñ	<Ô	<ð ð Ý¨"Ð-Ñ-Ô-ˆØ�Š�%�ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 
Œ•zÐ);Ð	<Ñ	<Ô	<ð Eð EÝ 3°9Ð=Ñ=Ô=ˆà	�ŠÐCÐCÐCÑDÔDÐDðEð Eð Eñ Eô Eð Eð Eð Eð Eð Eð Eð Eøøøð Eð Eð Eð Eð Eð Es#   œ'AÁAÁAÁ5)B+Â+B/Â2B/c                  óæ   — t          ¦   «         } |                      t          d d…         ¦  «        }|                      t          dd …         ¦  «        }|j        d         |j        d         k    sJ ‚d S )NrŒ   rx   )r   rÃ   rÄ   rµ   )rà   ÚX1ÚX2s      r&   Útest_fit_countvectorizer_twicerë   �  sh   € Ý	Ñ	Ô	€BØ	×	Ò	�-¨¨¨Ô+Ñ	,Ô	,€BØ	×	Ò	�-¨¨¨Ô+Ñ	,Ô	,€BØŒ8�AŒ;˜"œ( 1œ+Ò%Ð%Ð%Ð%Ð%Ð%r(   c                  ó¬   — g d¢} d}t          |¬¦  «        }|                     | ¦  «         g d¢}|                     ¦   «         }t          ||¦  «         dS )z¦Check `get_feature_names_out()` when a custom token pattern is passed.
    Non-regression test for:
    https://github.com/scikit-learn/scikit-learn/issues/12971
    ©z&This is the 1st document in my corpus.z This document is the 2nd sample.zAnd this is the 3rd one.zIs this the 4th document?z'[0-9]{1,3}(?:st|nd|rd|th)\s\b(\w{2,})\b©Útoken_pattern)ÚdocumentÚoneÚsampleN)r   rÃ   Úget_feature_names_outr	   )Úcorpusrï   Ú
vectorizerrB   Úfeature_names_outs        r&   Ú)test_countvectorizer_custom_token_patternr÷   ˆ  sr   € ð
ð ð €Fð ?€MÝ ¨}Ð=Ñ=Ô=€JØ×Ò˜VÑ$Ô$Ð$Ø,Ð,Ð,€HØ"×8Ò8Ñ:Ô:ÐÝÐ(¨(Ñ3Ô3Ð3Ð3Ð3r(   c                  óÈ   — g d¢} d}d}t          |¬¦  «        }t          j        t          |¬¦  «        5  |                     | ¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z¥Check that we raise an error if token pattern capture several groups.
    Non-regression test for:
    https://github.com/scikit-learn/scikit-learn/issues/12971
    rí   z)([0-9]{1,3}(?:st|nd|rd|th))\s\b(\w{2,})\bz,More than 1 capturing group in token patternrî   rÊ   N©r   r…   r†   rÎ   r°   )rô   rï   Úerr_msgrõ   s       r&   Ú<test_countvectorizer_custom_token_pattern_with_several_grouprû   ›  s»   € ð
ð ð €Fð A€MØ<€GÝ ¨}Ð=Ñ=Ô=€JÝ	Œ•z¨Ð	1Ñ	1Ô	1ð ð Ø�Š�vÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ´AÁAÁAc                  óz  — g d¢} d}t          d| ¬¦  «        }t          j        t          |¬¦  «        5  |                     | ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        ¦   «         5  t          j        dt          ¦  «         |                     | ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)ÚSampleÚUpperÚCaseÚ
VocabularyzyUpper case characters found in vocabulary while 'lowercase' is True. These entries will not be matched with any documentsT)Ú	lowercaser©   rÊ   Úerror)	r   r…   ÚwarnsÚUserWarningr°   ÚwarningsÚcatch_warningsÚsimplefilterr´   )r©   Úmessagerõ   s      r&   Ú'test_countvectorizer_uppercase_in_vocabr	  ®  sE  € ð ;Ð:Ð:€Jð	)ð õ !¨4¸JÐGÑGÔG€Jå	Œ•k¨Ð	1Ñ	1Ô	1ð #ð #Ø�Š�zÑ"Ô"Ð"ð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #õ 
Ô	 Ñ	"Ô	"ð )ð )ÝÔ˜g¥{Ñ3Ô3Ð3Ø×Ò˜ZÑ(Ô(Ð(ð)ð )ð )ñ )ô )ð )ð )ð )ð )ð )ð )ð )øøøð )ð )ð )ð )ð )ð )s#   ³AÁAÁAÁ30B0Â0B4Â7B4c                  ó¶   — g d¢g d¢g d¢g} t          dd¬¦  «                             | ¦  «        }g d¢}|                     |¦  «        }t          ||¦  «         dS )	z0Check get_feature_names_out for TfidfTransformer©rx   rx   rx   ©rx   rx   r   ©rx   r   r   TÚl2©Ú
smooth_idfÚnorm)rA   ÚcÚbN)r   r°   ró   r	   )r½   ÚtrÚfeature_names_inrö   s       r&   Ú%test_tf_transformer_feature_names_outr  Ã  sq   € à	ˆˆ�I�I�I˜y˜y˜yÐ)€AÝ	 T°Ð	5Ñ	5Ô	5×	9Ò	9¸!Ñ	<Ô	<€Bà&��ÐØ×0Ò0Ð1AÑBÔBÐÝÐ'Ð):Ñ;Ô;Ð;Ð;Ð;r(   c                  óÌ  — g d¢g d¢g d¢g} t          dd¬¦  «        }|                     | ¦  «                             ¦   «         }|dk                         ¦   «         sJ ‚t	          |dz                       d	¬
¦  «        g d¢¦  «         g d¢g d¢g d¢g} t          dd¬¦  «        }|                     | ¦  «                             ¦   «         }|dk                         ¦   «         sJ ‚d S )Nr  r  r  Tr  r  r   ry   rx   ©Úaxis©rå   rå   rå   )r   rÃ   ÚtoarrayÚallr   Úsum©r½   r  rÂ   s      r&   Útest_tf_idf_smoothingr  Í  sü   € Ø	ˆˆ�I�I�I˜y˜y˜yÐ)€AÝ	 T°Ð	5Ñ	5Ô	5€BØ×Ò˜QÑÔ×'Ò'Ñ)Ô)€EØ�QŠJ×ÒÑÔÐÐÐõ ˜u a™xŸnšn°!˜nÑ4Ô4°o°o°oÑFÔFÐFð 
ˆˆ�I�I�I˜y˜y˜yÐ)€AÝ	 T°Ð	5Ñ	5Ô	5€BØ×Ò˜QÑÔ×'Ò'Ñ)Ô)€EØ�QŠJ×ÒÑÔÐÐÐÐÐr(   zcno floating point exceptions, see https://github.com/numpy/numpy/pull/21895#issuecomment-1311525881©Úreasonc                  ó  — g d¢g d¢g d¢g} t          dd¬¦  «        }|                     | ¦  «                             ¦   «         }|dk                         ¦   «         sJ ‚t	          |dz                       d	¬
¦  «        g d¢¦  «         g d¢g d¢g d¢g} t          dd¬¦  «        }d}t          j        t          |¬¦  «        5  |                     | ¦  «                             ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nr  r  r  Fr  r  r   ry   rx   r  r  zdivide by zerorÊ   )	r   rÃ   r  r  r   r  r…   r  ÚRuntimeWarning)r½   r  rÂ   Úin_warning_messages       r&   Útest_tfidf_no_smoothingr%  Ý  s]  € ð 
ˆˆ�I�I�I˜y˜y˜yÐ)€AÝ	 U°Ð	6Ñ	6Ô	6€BØ×Ò˜QÑÔ×'Ò'Ñ)Ô)€EØ�QŠJ×ÒÑÔÐÐÐõ ˜u a™xŸnšn°!˜nÑ4Ô4°o°o°oÑFÔFÐFð 
ˆˆ�I�I�I˜y˜y˜yÐ)€AÝ	 U°Ð	6Ñ	6Ô	6€Bà)ÐÝ	Œ•nÐ,>Ð	?Ñ	?Ô	?ð &ð &Ø
×Ò˜ÑÔ×#Ò#Ñ%Ô%Ð%ð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &ð &ð &s   Ã (C5Ã5C9Ã<C9c                  ó,  — dgdgdgg} t          ddd ¬¦  «        }|                     | ¦  «                             ¦   «         }|d         dk    sJ ‚|d         |d         k    sJ ‚|d         |d         k    sJ ‚|d         dk     sJ ‚|d         dk     sJ ‚d S )Nrx   ry   r‚   TF)Úsublinear_tfÚuse_idfr  r   )r   rÃ   r  r  s      r&   Útest_sublinear_tfr)  ÷  s¯   € Ø
ˆˆqˆc�A�3ˆ€AÝ	 t°UÀÐ	FÑ	FÔ	F€BØ×Ò˜QÑÔ×'Ò'Ñ)Ô)€EØ�Œ8�qŠ=ˆ=ˆ=ˆ=Ø�Œ8�e˜A”hÒÐÐÐØ�Œ8�e˜A”hÒÐÐÐØ�Œ8�aŠ<ˆ<ˆ<ˆ<Ø�Œ8�aŠ<ˆ<ˆ<ˆ<ˆ<ˆ<r(   c                  óÜ
  — t          t          d d…         ¦  «        } t          d         g}t          t          ¦  «        dz
  }t          d¬¦  «        }|                     | ¦  «        }t          |d¦  «        r|                     ¦   «         }|d|j        d         f         dk    sJ ‚t          |j        ¬	¦  «        }||fD ]è}|                     |¦  «        }t          |d¦  «        r|                     ¦   «         }|j        }|d|d
         f         dk    sJ ‚|d|d         f         dk    sJ ‚|d|d         f         dk    sJ ‚d|vsJ ‚d|vsJ ‚|d|d         f         dk    sJ ‚|d|d         f         dk    sJ ‚|d|d         f         dk    sJ ‚|d|d         f         dk    sJ ‚Œét          d¬¦  «        }	|	 
                    |¦  «                             |¦  «                             ¦   «         }
t          |	j        ¦  «        t          |j        ¦  «        k    sJ ‚|
j        |t          |j        ¦  «        fk    sJ ‚|	                     |¦  «                             ¦   «         }|j        t          |¦  «        t          |j        ¦  «        fk    sJ ‚t          dd¬¦  «        }| 
                    |¦  «                             |¦  «                             ¦   «         }t          |d¦  «        rJ ‚t          d¬¦  «        }t          j        t           ¦  «        5  |                     |¦  «         d d d ¦  «         n# 1 swxY w Y   t#          t%          j        |d¬¦  «        dg|z  ¦  «         t          t          d d…         ¦  «        } t)          d¬¦  «        }|j        |_        |                     | ¦  «                             ¦   «         }|j        rJ ‚t#          |
|¦  «         |                     |¦  «                             ¦   «         }t#          ||¦  «         t          d ¬	¦  «        }t          j        t           ¦  «        5  |                     | ¦  «         d d d ¦  «         n# 1 swxY w Y   |                     dd¬¦  «         |                     ¦   «         }d}t3          |¦  «        } ||¦  «        }||k    sJ ‚|                     dd ¬¦  «         t          j        t           ¦  «        5  |                     ¦   «          d d d ¦  «         n# 1 swxY w Y   d |_        t          j        t           ¦  «        5  |                     ¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )!Néÿÿÿÿrx   ç      à?©ræ   Útocsrr   r¦   ry   r¨   ÚsaladÚtomatoÚwaterÚtheÚ	copyrightÚcokeÚburgerr§   Úl1©r  F)r  r(  Úidf_T©r(  r  rå   rH   )rJ   r  rK   Ú_gabbledegook_)rJ   rd   Ú_invalid_analyzer_type_)r®   rÄ   r¶   r   rÃ   Úhasattrr.  r³   r´   r   r°   r  r8  rµ   r…   r†   rÎ   r   Únpr  r   ræ   Úfixed_vocabulary_rÞ   Úbuild_preprocessorr   rp   )Ú
train_dataÚ	test_dataÚn_trainÚv1Úcounts_trainÚv2r»   Úcounts_testr©   Út1rÂ   Ú
tfidf_testÚt2ÚtfÚt3ÚtvÚtfidf2Útfidf_test2Úv3Ú	processorrr   rB   Úresults                          r&   Útest_vectorizerrR    s~  € å•m C R CÔ(Ñ)Ô)€JÝ˜rÔ"Ð#€IÝ•-Ñ Ô  1Ñ$€Gõ 
 Ð	$Ñ	$Ô	$€BØ×#Ò# JÑ/Ô/€LÝˆ|˜WÑ%Ô%ð ,Ø#×)Ò)Ñ+Ô+ˆØ˜˜2œ>¨'Ô2Ð2Ô3°qÒ8Ð8Ð8Ð8õ 
 B¤NÐ	3Ñ	3Ô	3€Bð �"ˆXð 8ð 8ˆØ—k’k )Ñ,Ô,ˆÝ�; Ñ(Ô(ð 	.Ø%×+Ò+Ñ-Ô-ˆKà”]ˆ
Ø˜1˜j¨Ô1Ð1Ô2°aÒ7Ð7Ð7Ð7Ø˜1˜j¨Ô2Ð2Ô3°qÒ8Ð8Ð8Ð8Ø˜1˜j¨Ô1Ð1Ô2°aÒ7Ð7Ð7Ð7ð ˜JÐ&Ð&Ð&Ð&ð  *Ð,Ð,Ð,Ð,ð ˜1˜j¨Ô0Ð0Ô1°QÒ6Ð6Ð6Ð6Ø˜1˜j¨Ô2Ð2Ô3°qÒ8Ð8Ð8Ð8Ø˜1˜j¨Ô0Ð0Ô1°QÒ6Ð6Ð6Ð6Ø˜1˜j¨Ô1Ð1Ô2°aÒ7Ð7Ð7Ð7Ð7õ 
˜tÐ	$Ñ	$Ô	$€BØ�FŠF�<Ñ Ô ×*Ò*¨<Ñ8Ô8×@Ò@ÑBÔB€EÝˆrŒw‰<Œ<�3˜rœ~Ñ.Ô.Ò.Ð.Ð.Ð.ØŒ;˜7¥C¨¬Ñ$7Ô$7Ð8Ò8Ð8Ð8Ð8ð —’˜kÑ*Ô*×2Ò2Ñ4Ô4€JØÔ¥ I¡¤µ°B´NÑ0CÔ0CÐDÒDÐDÐDÐDõ 
˜t¨UÐ	3Ñ	3Ô	3€BØ	�Š�Ñ	Ô	×	'Ò	'¨Ñ	5Ô	5×	=Ò	=Ñ	?Ô	?€BÝ�r˜6Ñ"Ô"Ð"Ð"Ð"õ 
 $Ð	'Ñ	'Ô	'€BÝ	Œ•zÑ	"Ô	"ð #ð #Ø
�Š�\Ñ"Ô"Ð"ð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #õ �bœf R¨aÐ0Ñ0Ô0°3°%¸'±/ÑBÔBÐBõ •m C R CÔ(Ñ)Ô)€JÝ	˜dÐ	#Ñ	#Ô	#€Bà”	€B„IØ×Ò˜jÑ)Ô)×1Ò1Ñ3Ô3€FØÔ#Ð#Ð#Ð#Ý˜e VÑ,Ô,Ð,ð —,’,˜yÑ)Ô)×1Ò1Ñ3Ô3€KÝ˜j¨+Ñ6Ô6Ð6õ 
 DÐ	)Ñ	)Ô	)€BÝ	Œ•zÑ	"Ô	"ð !ð !Ø
�Š�ZÑ Ô Ð ð!ð !ð !ñ !ô !ð !ð !ð !ð !ð !ð !øøøð !ð !ð !ð !ð ‡M‚M °5€MÑ9Ô9Ð9Ø×%Ò%Ñ'Ô'€IØG€DÝ" 4Ñ(Ô(€HØˆY�t‰_Œ_€FØ�vÒÐÐÐð ‡M‚MÐ 0¸t€MÑDÔDÐDÝ	Œ•zÑ	"Ô	"ð  ð  Ø
×ÒÑÔÐð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  ð .€B„MÝ	Œ•zÑ	"Ô	"ð ð Ø
×ÒÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð sH   ÌL<Ì<M ÍM ÑQ)Ñ)Q-Ñ0Q-Ó3TÔTÔTÔ?U!Õ!U%Õ(U%c                  ó²  — d\  } }}}t          | |||¬¦  «        }|                     t          ¦  «         |j        j        | k    sJ ‚|j        j        |k    sJ ‚|j        j        |k    sJ ‚|j        j        |k    sJ ‚d|_        d|_        d|_        d|_        |j        j        | k    sJ ‚|j        j        |k    sJ ‚|j        j        |k    sJ ‚|j        j        |k    sJ ‚|                     t          ¦  «         |j        j        |j        k    sJ ‚|j        j        |j        k    sJ ‚|j        j        |j        k    sJ ‚|j        j        |j        k    sJ ‚d S )N)r  FFF)r  r(  r  r'  r6  T)r   r°   r±   Ú_tfidfr  r(  r  r'  )r  r(  r  r'  rL  s        r&   Útest_tfidf_vectorizer_settersrU  i  s„  € Ø.GÑ+€Dˆ'�:˜|Ý	Ø˜7¨zÈð
ñ 
ô 
€Bð ‡F‚F�>ÑÔÐØŒ9Œ>˜TÒ!Ð!Ð!Ð!ØŒ9Ô Ò'Ð'Ð'Ð'ØŒ9Ô :Ò-Ð-Ð-Ð-ØŒ9Ô! \Ò1Ð1Ð1Ð1ð €B„GØ€B„JØ€B„MØ€B„OØŒ9Œ>˜TÒ!Ð!Ð!Ð!ØŒ9Ô Ò'Ð'Ð'Ð'ØŒ9Ô :Ò-Ð-Ð-Ð-ØŒ9Ô! \Ò1Ð1Ð1Ð1à‡F‚F�>ÑÔÐØŒ9Œ>˜RœWÒ$Ð$Ð$Ð$ØŒ9Ô ¤
Ò*Ð*Ð*Ð*ØŒ9Ô 2¤=Ò0Ð0Ð0Ð0ØŒ9Ô! R¤_Ò4Ð4Ð4Ð4Ð4Ð4r(   c                  óš  — t          ¦   «         } |                      t          ¦  «        }|j        }|j        t          t          ¦  «        | j        fk    sJ ‚|j        | j        k    sJ ‚t          j	        |j
        ¦  «        dk    sJ ‚t          j	        |j
        ¦  «        dk     sJ ‚t          j        |j
        ¦  «        dk    sJ ‚t          j        |j
        ¦  «        dk     sJ ‚t          |j        d         ¦  «        D ];}t          t          j                             |d         j
        d¦  «        d¦  «         Œ<t          dd¬¦  «        } |                      t          ¦  «        }|j        t          t          ¦  «        | j        fk    sJ ‚|j        | j        k    sJ ‚|j        }||k    sJ ‚|d|z  k     sJ ‚t          j	        |j
        ¦  «        dk    sJ ‚t          j        |j
        ¦  «        dk     sJ ‚t          |j        d         ¦  «        D ];}t          t          j                             |d         j
        d¦  «        d¦  «         Œ<d S )	Nr+  r   rx   ry   rå   rw   r6  )r|   r  )r   r´   rÄ   Únnzrµ   r¶   Ú
n_featuresÚdtyper=  ÚminÚdataÚmaxÚranger   Úlinalgr  )r»   r½   Ú	token_nnzÚiÚ
ngrams_nnzs        r&   Útest_hashing_vectorizerrb  †  s'  € åÑÔ€AØ	�Š•MÑ"Ô"€AØ”€IØŒ7•s�=Ñ)Ô)¨1¬<Ð8Ò8Ð8Ð8Ð8ØŒ7�a”gÒÐÐÐõ Œ6�!”&‰>Œ>˜BÒÐÐÐÝŒ6�!”&‰>Œ>˜AÒÐÐÐÝŒ6�!”&‰>Œ>˜AÒÐÐÐÝŒ6�!”&‰>Œ>˜AÒÐÐÐõ �1”7˜1”:ÑÔð ?ð ?ˆÝ�BœIŸNšN¨1¨Q¬4¬9°aÑ8Ô8¸#Ñ>Ô>Ð>Ð>õ 	 f°4Ð8Ñ8Ô8€AØ	�Š•MÑ"Ô"€AØŒ7•s�=Ñ)Ô)¨1¬<Ð8Ò8Ð8Ð8Ð8ØŒ7�a”gÒÐÐÐð ”€JØ˜	Ò!Ð!Ð!Ð!Ø˜˜I™Ò%Ð%Ð%Ð%õ Œ6�!”&‰>Œ>˜BÒÐÐÐÝŒ6�!”&‰>Œ>˜AÒÐÐÐõ �1”7˜1”:ÑÔð ?ð ?ˆÝ�BœIŸNšN¨1¨Q¬4¬9°aÑ8Ô8¸#Ñ>Ô>Ð>Ð>ð?ð ?r(   c                  ój  — t          d¬¦  «        } t          j        t          ¦  «        5  |                      ¦   «          d d d ¦  «         n# 1 swxY w Y   | j        rJ ‚|                      t          ¦  «        }|j        \  }}t          | j
        ¦  «        |k    sJ ‚|                      ¦   «         }t          |t          j        ¦  «        sJ ‚|j        t          k    sJ ‚t          |¦  «        |k    sJ ‚t!          g d¢|¦  «         t#          |¦  «        D ]%\  }}|| j
                             |¦  «        k    sJ ‚Œ&g d¢}t          |¬¦  «        } |                      ¦   «         }t!          g d¢|¦  «         | j        sJ ‚t#          |¦  «        D ]%\  }}|| j
                             |¦  «        k    sJ ‚Œ&d S )Nr,  r-  ©	r§   r5  Úcelerir4  r¦   r/  Ú	sparklingr0  r1  r¨   )r   r…   r†   rÎ   ró   r>  rÃ   rÄ   rµ   r¶   r³   r²   r=  ÚndarrayrY  rb   r	   Ú	enumerateÚget)rà   r½   Ú	n_samplesrX  Úfeature_namesÚidxÚnamer¸   s           r&   Útest_feature_namesrn  ­  sG  € Ý	 Ð	$Ñ	$Ô	$€Bõ 
Œ•zÑ	"Ô	"ð #ð #Ø
× Ò Ñ"Ô"Ð"ð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #àÔ#Ð#Ð#Ð#ð 	×Ò�Ñ'Ô'€AØœGÑ€IˆzÝˆrŒ~ÑÔ *Ò,Ð,Ð,Ð,à×,Ò,Ñ.Ô.€MÝ�m¥R¤ZÑ0Ô0Ð0Ð0Ð0ØÔ¥&Ò(Ð(Ð(Ð(åˆ}ÑÔ Ò+Ð+Ð+Ð+Ýð
	
ð 
	
ð 
	
ð 	ñô ð õ ˜}Ñ-Ô-ð /ð /‰	ˆˆTØ�b”n×(Ò(¨Ñ.Ô.Ò.Ð.Ð.Ð.Ð.ð
ð 
ð 
€Eõ 
 EÐ	*Ñ	*Ô	*€BØ×,Ò,Ñ.Ô.€MÝð
	
ð 
	
ð 
	
ð 	ñô ð ð ÔÐÐÐå˜}Ñ-Ô-ð /ð /‰	ˆˆTØ�b”n×(Ò(¨Ñ.Ô.Ò.Ð.Ð.Ð.Ð.ð/ð /s   ªAÁAÁAc                 ó�   — h d£} | dd¬¦  «        }|                      t          ¦  «         t          |j        ¦  «        |k    sJ ‚d S )N>   r§   r¦   r/  r5  g333333ã?é   )ræ   Úmax_features)r°   rÄ   rª   r³   )rF   Úexpected_vocabularyrõ   s      r&   Útest_vectorizer_max_featuresrs  ô  sY   € à>Ð>Ð>Ðð � 3°QÐ7Ñ7Ô7€JØ‡N‚N•=Ñ!Ô!Ð!ÝˆzÔ%Ñ&Ô&Ð*=Ò=Ð=Ð=Ð=Ð=Ð=r(   c                  óN  — t          d¬¦  «        } t          d¬¦  «        }t          d ¬¦  «        }|                      t          ¦  «                             d¬¦  «        }|                     t          ¦  «                             d¬¦  «        }|                     t          ¦  «                             d¬¦  «        }|                      ¦   «         }|                     ¦   «         }|                     ¦   «         }d|                     ¦   «         k    sJ ‚d|                     ¦   «         k    sJ ‚d|                     ¦   «         k    sJ ‚d|t          j        |¦  «                 k    sJ ‚d|t          j        |¦  «                 k    sJ ‚d|t          j        |¦  «                 k    sJ ‚d S )Nrx   ©rq  r‚   r   r  é   r2  )r   rÃ   r±   r  ró   r\  r=  Úargmax)	Úcv_1Úcv_3Úcv_NoneÚcounts_1Úcounts_3Úcounts_NoneÚ
features_1Ú
features_3Úfeatures_Nones	            r&   Ú"test_count_vectorizer_max_featuresr�  þ  sŠ  € õ ¨Ð*Ñ*Ô*€DÝ¨Ð*Ñ*Ô*€DÝ¨4Ð0Ñ0Ô0€Gà×!Ò!¥.Ñ1Ô1×5Ò5¸1Ð5Ñ=Ô=€HØ×!Ò!¥.Ñ1Ô1×5Ò5¸1Ð5Ñ=Ô=€HØ×'Ò'­Ñ7Ô7×;Ò;ÀÐ;ÑCÔC€Kà×+Ò+Ñ-Ô-€JØ×+Ò+Ñ-Ô-€JØ×1Ò1Ñ3Ô3€Mð �—’‘”ÒÐÐÐØ�—’‘”ÒÐÐÐØ�—’Ñ!Ô!Ò!Ð!Ð!Ð!ð �J�rœy¨Ñ2Ô2Ô3Ò3Ð3Ð3Ð3Ø�J�rœy¨Ñ2Ô2Ô3Ò3Ð3Ð3Ð3Ø�M¥"¤)¨KÑ"8Ô"8Ô9Ò9Ð9Ð9Ð9Ð9Ð9r(   c                  ó€  — g d¢} t          dd¬¦  «        }|                     | ¦  «         d|j                             ¦   «         v sJ ‚t	          |j                             ¦   «         ¦  «        dk    sJ ‚d|_        |                     | ¦  «         d|j                             ¦   «         vsJ ‚t	          |j                             ¦   «         ¦  «        dk    sJ ‚d	|_        |                     | ¦  «         d|j                             ¦   «         vsJ ‚t	          |j                             ¦   «         ¦  «        dk    sJ ‚d S )
N©ÚabcÚdeaÚeatr€   rå   ©r{   ræ   rA   rƒ   r,  rp  rx   )r   r°   r³   r«   r¶   ræ   ©rA  r¼   s     r&   Útest_vectorizer_max_dfr‰    sA  € Ø%Ð%Ð%€IÝ F°3Ð7Ñ7Ô7€DØ‡H‚HˆYÑÔÐØ�$Ô"×'Ò'Ñ)Ô)Ð)Ð)Ð)Ð)ÝˆtÔ×$Ò$Ñ&Ô&Ñ'Ô'¨1Ò,Ð,Ð,Ð,à€D„KØ‡H‚HˆYÑÔÐØ�dÔ&×+Ò+Ñ-Ô-Ð-Ð-Ð-Ð-ÝˆtÔ×$Ò$Ñ&Ô&Ñ'Ô'¨1Ò,Ð,Ð,Ð,à€D„KØ‡H‚HˆYÑÔÐØ�dÔ&×+Ò+Ñ-Ô-Ð-Ð-Ð-Ð-ÝˆtÔ×$Ò$Ñ&Ô&Ñ'Ô'¨1Ò,Ð,Ð,Ð,Ð,Ð,r(   c                  ó€  — g d¢} t          dd¬¦  «        }|                     | ¦  «         d|j                             ¦   «         v sJ ‚t	          |j                             ¦   «         ¦  «        dk    sJ ‚d|_        |                     | ¦  «         d|j                             ¦   «         vsJ ‚t	          |j                             ¦   «         ¦  «        dk    sJ ‚d	|_        |                     | ¦  «         d|j                             ¦   «         vsJ ‚t	          |j                             ¦   «         ¦  «        dk    sJ ‚d S )
Nrƒ  r€   rx   )r{   Úmin_dfrA   rƒ   ry   r  gš™™™™™é?)r   r°   r³   r«   r¶   r‹  rˆ  s     r&   Útest_vectorizer_min_dfrŒ  *  sA  € Ø%Ð%Ð%€IÝ F°1Ð5Ñ5Ô5€DØ‡H‚HˆYÑÔÐØ�$Ô"×'Ò'Ñ)Ô)Ð)Ð)Ð)Ð)ÝˆtÔ×$Ò$Ñ&Ô&Ñ'Ô'¨1Ò,Ð,Ð,Ð,à€D„KØ‡H‚HˆYÑÔÐØ�dÔ&×+Ò+Ñ-Ô-Ð-Ð-Ð-Ð-ÝˆtÔ×$Ò$Ñ&Ô&Ñ'Ô'¨1Ò,Ð,Ð,Ð,à€D„KØ‡H‚HˆYÑÔÐØ�dÔ&×+Ò+Ñ-Ô-Ð-Ð-Ð-Ð-ÝˆtÔ×$Ò$Ñ&Ô&Ñ'Ô'¨1Ò,Ð,Ð,Ð,Ð,Ð,r(   c                  ó"  — ddg} t          dd¬¦  «        }|                     | ¦  «                             ¦   «         }t          g d¢|                     ¦   «         ¦  «         t          g d¢g d¢g|¦  «         t          ddd	¬
¦  «        }|                     | ¦  «                             ¦   «         }t          g d¢g d¢g|¦  «         t          ddd	t
          j        ¬¦  «        }|                     | ¦  «        }|j        t
          j        k    sJ ‚d S )NÚaaabcÚabbder€   rå   r‡  )rA   r  r  Údr+   )r‚   rx   rx   r   r   )rx   ry   r   rx   rx   T)r{   ræ   Úbinary)rx   rx   rx   r   r   )rx   rx   r   rx   rx   )r{   ræ   r‘  rY  )r   rÃ   r  r	   ró   r=  Úfloat32rY  )rA  r¼   r½   ÚX_sparses       r&   Útest_count_binary_occurrencesr”  <  s  € à˜'Ð"€IÝ F°3Ð7Ñ7Ô7€DØ×Ò˜9Ñ%Ô%×-Ò-Ñ/Ô/€AÝÐ0Ð0Ð0°$×2LÒ2LÑ2NÔ2NÑOÔOÐOÝ˜˜˜¨¨¨Ð9¸1Ñ=Ô=Ð=õ  F°3¸tÐDÑDÔD€DØ×Ò˜9Ñ%Ô%×-Ò-Ñ/Ô/€AÝ˜˜˜¨¨¨Ð9¸1Ñ=Ô=Ð=õ  F°3¸tÍ2Ì:ÐVÑVÔV€DØ×!Ò! )Ñ,Ô,€HØŒ>�RœZÒ'Ð'Ð'Ð'Ð'Ð'r(   c                  óv  — ddg} t          ddd ¬¦  «        }|                     | ¦  «        }t          j        |dd…         j        ¦  «        dk    sJ ‚t          j        |dd	…         j        ¦  «        d	k    sJ ‚|j        t          j        k    sJ ‚t          ddd
d ¬¦  «        }|                     | ¦  «        }t          j        |j        ¦  «        dk    sJ ‚|j        t          j        k    sJ ‚t          ddd
d t          j        ¬¦  «        }|                     | ¦  «        }|j        t          j        k    sJ ‚d S )NrŽ  r�  Fr€   )Úalternate_signr{   r  r   rx   r‚   ry   T)r{   r–  r‘  r  )r{   r–  r‘  r  rY  )r   r´   r=  r\  r[  rY  Úfloat64)rA  r¼   r½   s      r&   Útest_hashed_binary_occurrencesr˜  P  sE  € ð ˜'Ð"€IÝ¨E¸FÈÐNÑNÔN€DØ�Š�yÑ!Ô!€AÝŒ6�!�A�a�C”&”+ÑÔ !Ò#Ð#Ð#Ð#ÝŒ6�!�A�a�C”&”+ÑÔ !Ò#Ð#Ð#Ð#ØŒ7•b”jÒ Ð Ð Ð õ Ø¨°dÀðñ ô €Dð 	�Š�yÑ!Ô!€AÝŒ6�!”&‰>Œ>˜QÒÐÐÐØŒ7•b”jÒ Ð Ð Ð õ Ø¨°dÀÍRÌZðñ ô €Dð 	�Š�yÑ!Ô!€AØŒ7•b”jÒ Ð Ð Ð Ð Ð r(   c                 óÚ  — t           } | ¦   «         }|                     |¦  «        }|                     |¦  «        }t          |t          ¦  «        sJ ‚|                     ¦   «         }t          ||¦  «        D ]j\  }}t          j        t          j	         ||¦  «        ¦  «        ¦  «        }t          j        t          j	        |¦  «        ¦  «        }t          ||¦  «         Œkt          j        |¦  «        sJ ‚|j        dk    sJ ‚|                     ¦   «         }	|                     |	¦  «        }
t          ||
¦  «        D ]9\  }}t          t          j        |¦  «        t          j        |¦  «        ¦  «         Œ:|                     ¦   «         }|                     |¦  «        }t          ||¦  «        D ]9\  }}t          t          j        |¦  «        t          j        |¦  «        ¦  «         Œ:d S )NÚcsr)rÄ   rÃ   r·   r²   r­   rp   Úzipr=  ÚsortÚuniquer	   r
   ÚissparseÚformatr  Útocsc)rF   r[  rõ   Útransformed_dataÚinversed_dataÚanalyzeÚdocÚinversed_termsr¹   Útransformed_data2Úinversed_data2Úterms2Útransformed_data3Úinversed_data3Úterms3s                  r&   Ú!test_vectorizer_inverse_transformr¬  k  sÓ  € õ €DØ�‘”€JØ!×/Ò/°Ñ5Ô5ÐØ×0Ò0Ð1AÑBÔB€MÝ�m¥TÑ*Ô*Ð*Ð*Ð*à×'Ò'Ñ)Ô)€GÝ" 4¨Ñ7Ô7ð 2ð 2Ñˆˆ^Ý”�œ	 ' '¨#¡,¤,Ñ/Ô/Ñ0Ô0ˆÝœ¥¤¨>Ñ!:Ô!:Ñ;Ô;ˆÝ˜5 .Ñ1Ô1Ð1Ð1åŒ?Ð+Ñ,Ô,Ð,Ð,Ð,ØÔ" eÒ+Ð+Ð+Ð+ð )×0Ò0Ñ2Ô2ÐØ×1Ò1Ð2CÑDÔD€NÝ˜]¨NÑ;Ô;ð <ð <‰ˆˆvÝ�2œ7 5™>œ>­2¬7°6©?¬?Ñ;Ô;Ð;Ð;ð )×.Ò.Ñ0Ô0ÐØ×1Ò1Ð2CÑDÔD€NÝ˜]¨NÑ;Ô;ð <ð <‰ˆˆvÝ�2œ7 5™>œ>­2¬7°6©?¬?Ñ;Ô;Ð;Ð;ð<ð <r(   c                  ó  — t           t          z   } dgt          t           ¦  «        z  dgt          t          ¦  «        z  z   }t          | |dd¬¦  «        \  }}}}t	          dt          ¦   «         fdt          ¦   «         fg¦  «        }dd	gd
dœ}t          ||dd¬¦  «        }|                     ||¦  «         	                    |¦  «        }	t          |	|¦  «         |j        dk    sJ ‚|j        j        d         }
|
j        dk    sJ ‚d S )Nr+  rx   gš™™™™™É?r   ©Ú	test_sizeÚrandom_stater¼   Úsvc©rx   rx   rw   ©ÚhingeÚsquared_hinge)Úvect__ngram_rangeÚ	svc__lossr‚   )Ún_jobsrà   rå   )r±   ÚNOTJUNK_FOOD_DOCSr¶   r   r   r   r   r   r°   Úpredictr	   Úbest_score_Úbest_estimator_rÅ   r|   ©r[  Útargetr@  rA  Útarget_trainÚtarget_testÚpipelineÚ
parametersÚgrid_searchÚpredÚbest_vectorizers              r&   Ú-test_count_vectorizer_pipeline_grid_selectionrÆ  ‹  s-  € åÕ-Ñ-€Dð ˆT•C�Ñ'Ô'Ñ'¨1¨#µÕ4EÑ0FÔ0FÑ*FÑF€Fõ 8HØˆf °!ð8ñ 8ô 8Ñ4€J�	˜<¨õ ˜&¥/Ñ"3Ô"3Ð4°u½i¹k¼kÐ6JÐKÑLÔL€Hð % fÐ-Ø/ðð €Jõ ˜x¨¸AÀ!ÐDÑDÔD€Kð �?Š?˜: |Ñ4Ô4×<Ò<¸YÑGÔG€DÝ�t˜[Ñ)Ô)Ð)ð
 Ô" cÒ)Ð)Ð)Ð)Ø!Ô1Ô=¸fÔE€OØÔ&¨&Ò0Ð0Ð0Ð0Ð0Ð0r(   c                  ó:  — t           t          z   } dgt          t           ¦  «        z  dgt          t          ¦  «        z  z   }t          | |dd¬¦  «        \  }}}}t	          dt          ¦   «         fdt          ¦   «         fg¦  «        }dd	gd
ddœ}t          ||d¬¦  «        }|                     ||¦  «         	                    |¦  «        }	t          |	|¦  «         |j        dk    sJ ‚|j        j        d         }
|
j        dk    sJ ‚|
j        dk    sJ ‚|
j        rJ ‚d S )Nr+  rx   gš™™™™™¹?r   r®  r¼   r±  r²  rw   )r6  r  r³  )r¶  Ú
vect__normr·  )r¸  rå   r  )r±   r¹  r¶   r   r   r   r   r   r°   rº  r	   r»  r¼  rÅ   r|   r  r>  r½  s              r&   Ú'test_vectorizer_pipeline_grid_selectionrÉ  ¯  sQ  € åÕ-Ñ-€Dð ˆT•C�Ñ'Ô'Ñ'¨1¨#µÕ4EÑ0FÔ0FÑ*FÑF€Fõ 8HØˆf °!ð8ñ 8ô 8Ñ4€J�	˜<¨õ ˜&¥/Ñ"3Ô"3Ð4°u½i¹k¼kÐ6JÐKÑLÔL€Hð % fÐ-Ø"Ø/ðð €Jõ ˜x¨¸AÐ>Ñ>Ô>€Kð �?Š?˜: |Ñ4Ô4×<Ò<¸YÑGÔG€DÝ�t˜[Ñ)Ô)Ð)ð
 Ô" cÒ)Ð)Ð)Ð)Ø!Ô1Ô=¸fÔE€OØÔ&¨&Ò0Ð0Ð0Ð0ØÔ 4Ò'Ð'Ð'Ð'ØÔ0Ð0Ð0Ð0Ð0Ð0r(   c                  ó*  — t           t          z   } dgt          t           ¦  «        z  dgt          t          ¦  «        z  z   }t          dt	          ¦   «         fdt          ¦   «         fg¦  «        }t          || |d¬¦  «        }t          |g d¢¦  «         d S )Nr+  rx   r¼   r±  r‚   )rà   r  )r±   r¹  r¶   r   r   r   r   r	   )r[  r¾  rÁ  Ú	cv_scoress       r&   Ú)test_vectorizer_pipeline_cross_validationrÌ  Ö  sŽ   € åÕ-Ñ-€Dð ˆT•C�Ñ'Ô'Ñ'¨1¨#µÕ4EÑ0FÔ0FÑ*FÑF€Få˜&¥/Ñ"3Ô"3Ð4°u½i¹k¼kÐ6JÐKÑLÔL€Hå ¨$°¸1Ð=Ñ=Ô=€IÝ�y / / /Ñ2Ô2Ð2Ð2Ð2r(   c                  ót  — d} t          ¦   «         }|                     | g¦  «        }|j        dk    sJ ‚t          d d¬¦  «        }|                     | g¦  «        }|j        dk    sJ ‚|j        |j        k    sJ ‚t          t          j        |j	        ¦  «        t          j        |j	        ¦  «        ¦  «         d S )Nuî   ÐœÐ°ÑˆÐ¸Ð½Ð½Ð¾Ðµ Ð¾Ð±ÑƒÑ‡ÐµÐ½Ð¸Ðµ â€” Ð¾Ð±ÑˆÐ¸Ñ€Ð½Ñ‹Ð¹ Ð¿Ð¾Ð´Ñ€Ð°Ð·Ð´ÐµÐ» Ð¸Ñ�ÐºÑƒÑ�Ñ�Ñ‚Ð²ÐµÐ½Ð½Ð¾Ð³Ð¾ Ð¸Ð½Ñ‚ÐµÐ»Ð»ÐµÐºÑ‚Ð°, Ð¸Ð·ÑƒÑ‡Ð°ÑŽÑ‰Ð¸Ð¹ Ð¼ÐµÑ‚Ð¾Ð´Ñ‹ Ð¿Ð¾Ñ�Ñ‚Ñ€Ð¾ÐµÐ½Ð¸Ñ� Ð°Ð»Ð³Ð¾Ñ€Ð¸Ñ‚Ð¼Ð¾Ð², Ñ�Ð¿Ð¾Ñ�Ð¾Ð±Ð½Ñ‹Ñ… Ð¾Ð±ÑƒÑ‡Ð°Ñ‚ÑŒÑ�Ñ�.)rx   é   F)r  r–  )rx   i   )
r   rÃ   rµ   r   r´   rW  r	   r=  rœ  r[  )rð   r¼   Ú	X_countedÚX_hasheds       r&   Útest_vectorizer_unicoderÑ  ã  sÀ   € ð	1ð õ ÑÔ€DØ×"Ò" H :Ñ.Ô.€IØŒ?˜gÒ%Ð%Ð%Ð%å $°uÐ=Ñ=Ô=€DØ�~Š~˜x˜jÑ)Ô)€HØŒ>˜ZÒ'Ð'Ð'Ð'ð Œ=˜HœLÒ(Ð(Ð(Ð(õ •r”w˜yœ~Ñ.Ô.µ´¸¼Ñ0FÔ0FÑGÔGÐGÐGÐGr(   c                  ó  — ddg} t          | ¬¦  «        }|                     t          ¦  «        }|                     t          ¦  «        }t	          |                     ¦   «         |                     ¦   «         ¦  «         |j        sJ ‚d S )Nr¦   re  r¨   )r   rÃ   rÄ   r´   r   r  r>  )r©   r¼   ÚX_1ÚX_2s       r&   Ú+test_tfidf_vectorizer_with_fixed_vocabularyrÕ  ü  su   € à˜8Ð$€JÝ jÐ1Ñ1Ô1€DØ
×
Ò
�]Ñ
+Ô
+€CØ
�.Š.�Ñ
'Ô
'€CÝ˜cŸkšk™mœm¨S¯[ª[©]¬]Ñ;Ô;Ð;ØÔ!Ð!Ð!Ð!Ð!Ð!r(   c                  óÄ  — t          ¦   «         t          d¬¦  «        t          d¬¦  «        t          d¬¦  «        t          ¦   «         t          t          ¬¦  «        t          t          ¬¦  «        t          t          ¬¦  «                             t
          ¦  «        t          t          ¬	¦  «                             t
          ¦  «        t          ¦   «         t          t          ¬¦  «        t          ¦   «                              t
          ¦  «        g} | D ]Í}t          j	        |¦  «        }t          j
        |¦  «        }t          |¦  «        |j        k    sJ ‚|                     ¦   «         |                     ¦   «         k    sJ ‚t          rt          |t           ¦  «        rŒ�t!          |                     t
          ¦  «        |                     t
          ¦  «        ¦  «         ŒÎd S )
Nr6  r7  T)r‘  rw   ©r|   rc   )r{   rI   )r   r   r   r5   r°   r±   r-   r   ÚpickleÚdumpsÚloadsÚtypeÚ	__class__Ú
get_paramsr   r²   r   rÃ   )Ú	instancesÚorigr%   Úcopys       r&   Útest_pickling_vectorizerrá    s’  € åÑÔÝ˜tÐ$Ñ$Ô$Ý Ð&Ñ&Ô&Ý fÐ-Ñ-Ô-ÝÑÔÝ¥ZÐ0Ñ0Ô0Ý¥Ð.Ñ.Ô.Ý¥ZÐ0Ñ0Ô0×4Ò4µ^ÑDÔDÝ¥lÐ3Ñ3Ô3×7Ò7½ÑGÔGÝÑÔÝ¥Ð.Ñ.Ô.ÝÑÔ×Ò�nÑ-Ô-ð€Ið ð ð ˆÝŒL˜ÑÔˆÝŒ|˜A‰ŒˆÝ�D‰zŒz˜Tœ^Ò+Ð+Ð+Ð+Ø�ŠÑ Ô  D§O¢OÑ$5Ô$5Ò5Ð5Ð5Ð5Ýð 	�
 4Õ):Ñ;Ô;ð 	Øå(Ø×"Ò"¥>Ñ2Ô2Ø×"Ò"¥>Ñ2Ô2ñô ð ð ðð r(   Úfactoryc                 óÄ   — t          ¦   «         } | |¦  «        }d}t          j        t          j        |¦  «        ¦  «        } ||¦  «        } ||¦  «        }||k    sJ ‚dS )z_Tokenizers cannot be pickled
    https://github.com/scikit-learn/scikit-learn/issues/12833
    rK   N)r   rØ  rÚ  rÙ  )râ  ÚvecÚfunctionrr   Úroundtripped_functionrB   rQ  s          r&   Útest_pickling_built_processorsrç  $  so   € õ Ñ
Ô
€CØˆw�s‰|Œ|€HØG€DÝ"œL­¬°hÑ)?Ô)?Ñ@Ô@ÐØˆx˜‰~Œ~€HØ"Ð" 4Ñ(Ô(€FØ�XÒÐÐÐÐÐr(   c                  ó  — t           j                             d¦  «        } t          j        g d¢¦  «        }t	          dd¦  «        D ]Å}t          |                      |dd¬¦  «        ¦  «        }t          |¬¦  «        }t          j	        t          j
        |¦  «        ¦  «        }|                     t          ¦  «         |                     t          ¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         ŒÆd S ©Nr   rd  éd   rŒ   F)Úsizer,   r¨   )r=  ÚrandomÚRandomStateÚarrayr]  rª   Úchoicer   rØ  rÚ  rÙ  r°   rÄ   r	   ró   )ÚrngÚvocab_wordsÚxÚ	vocab_setrà   Úunpickled_cvs         r&   Ú-test_countvectorizer_vocab_sets_when_picklingrõ  9  sþ   € õ Œ)×
Ò
 Ñ
"Ô
"€CÝ”(ð
	
ð 
	
ð 
	
ñô €Kõ �1�c‰]Œ]ð 
ð 
ˆÝ˜Ÿ
š
 ;°QÀ˜
ÑFÔFÑGÔGˆ	Ý¨	Ð2Ñ2Ô2ˆÝ”|¥F¤L°Ñ$4Ô$4Ñ5Ô5ˆØ
�Š�}ÑÔÐØ×Ò�Ñ'Ô'Ð'ÝØ×$Ò$Ñ&Ô&¨×(JÒ(JÑ(LÔ(Lñ	
ô 	
ð 	
ð 	
ð
ð 
r(   c                  óZ  — t           j                             d¦  «        } t          j        g d¢¦  «        }t	          dd¦  «        D ]ä}t          ¦   «         }|                      |dd¬¦  «        }t	          dd¦  «        D ]}||||         <   Œt          |¬¦  «        }t          j	        t          j
        |¦  «        ¦  «        }|                     t          ¦  «         |                     t          ¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         Œåd S ré  )r=  rì  rí  rî  r]  r¬   rï  r   rØ  rÚ  rÙ  r°   rÄ   r	   ró   )rð  rñ  rò  Ú
vocab_dictrÝ   Úyrà   rô  s           r&   Ú.test_countvectorizer_vocab_dicts_when_picklingrù  U  s%  € Ý
Œ)×
Ò
 Ñ
"Ô
"€CÝ”(ð
	
ð 
	
ð 
	
ñô €Kõ �1�c‰]Œ]ð 
ð 
ˆÝ‘V”Vˆ
Ø—
’
˜;¨Q¸�
Ñ>Ô>ˆÝ�q˜!‘”ð 	%ð 	%ˆAØ#$ˆJ�u˜Q”xÑ Ð Ý¨
Ð3Ñ3Ô3ˆÝ”|¥F¤L°Ñ$4Ô$4Ñ5Ô5ˆØ
�Š�}ÑÔÐØ×Ò�Ñ'Ô'Ð'ÝØ×$Ò$Ñ&Ô&¨×(JÒ(JÑ(LÔ(Lñ	
ô 	
ð 	
ð 	
ð
ð 
r(   c                  óÌ  — t          ¦   «                              t          ¦  «        } t          ¦   «                              | ¦  «        }t          j        |¦  «        }t          j        |¦  «        }t          |¦  «        |j	        k    sJ ‚t          |                     | ¦  «                             ¦   «         |                     | ¦  «                             ¦   «         ¦  «         d S r"   )r   rÃ   r±   r   r°   rØ  rÙ  rÚ  rÛ  rÜ  r	   r  )r½   rß  r%   rà  s       r&   Útest_pickling_transformerrû  r  s³   € ÝÑÔ×'Ò'­Ñ7Ô7€AÝÑÔ×!Ò! !Ñ$Ô$€DÝŒ�TÑÔ€AÝŒ<˜‰?Œ?€DÝ�‰:Œ:˜œÒ'Ð'Ð'Ð'Ý�t×)Ò)¨!Ñ,Ô,×4Ò4Ñ6Ô6¸×8JÒ8JÈ1Ñ8MÔ8M×8UÒ8UÑ8WÔ8WÑXÔXÐXÐXÐXr(   c                  ó|  — t          ¦   «                              t          ¦  «        } t          ¦   «                              | ¦  «        }t          ¦   «         }|j        |_        t          |                     | ¦  «                             ¦   «         |                     | ¦  «                             ¦   «         ¦  «         d S r"   )	r   rÃ   r±   r   r°   r8  r	   r´   r  )r½   rß  rà  s      r&   Útest_transformer_idf_setterrý  {  sŽ   € ÝÑÔ×'Ò'­Ñ7Ô7€AÝÑÔ×!Ò! !Ñ$Ô$€DÝÑÔ€DØ”	€D„IÝ�t—~’~ aÑ(Ô(×0Ò0Ñ2Ô2°D·N²NÀ1Ñ4EÔ4E×4MÒ4MÑ4OÔ4OÑPÔPÐPÐPÐPr(   c                  ó  — t          d¬¦  «        } |                      t          ¦  «         t          | j        d¬¦  «        }| j        |_        t          |                     t          ¦  «                             ¦   «         |                      t          ¦  «                             ¦   «         ¦  «         t          | j        d¬¦  «        }d}t          j	        t          |¬¦  «        5  | j        |_        d d d ¦  «         d S # 1 swxY w Y   d S )NTr9  ©r©   r(  Fz+`idf_` cannot be set when `user_idf=False`.rÊ   )r   r°   r±   r³   r8  r	   r´   r  r…   r†   rÎ   )rß  rà  rú   s      r&   Útest_tfidf_vectorizer_setterr   ƒ  s(  € Ý 4Ð(Ñ(Ô(€DØ‡H‚H�^ÑÔÐÝ dÔ&6ÀÐEÑEÔE€DØ”	€D„IÝØ�Š•~Ñ&Ô&×.Ò.Ñ0Ô0Ø�Š•~Ñ&Ô&×.Ò.Ñ0Ô0ñô ð õ
  dÔ&6ÀÐFÑFÔF€DØ;€GÝ	Œ•z¨Ð	1Ñ	1Ô	1ð ð Ø”IˆŒ	ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Ã$C>Ã>DÄDc                  óF  — t          d¬¦  «        } |                      t          ¦  «         t          | j        d¬¦  «        }t	          | j        ¦  «        }dg|dz   z  }t          j        t          ¦  «        5  t          |d|¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NTr9  rÿ  rå   rx   r8  )
r   r°   r±   r³   r¶   r8  r…   r†   rÎ   Úsetattr)r¼   rà  Úexpected_idf_lenÚinvalid_idfs       r&   Ú%test_tfidfvectorizer_invalid_idf_attrr  “  sß   € Ý 4Ð(Ñ(Ô(€DØ‡H‚H�^ÑÔÐÝ dÔ&6ÀÐEÑEÔE€DÝ˜4œ9‘~”~ÐØ�%Ð+¨aÑ/Ñ0€KÝ	Œ•zÑ	"Ô	"ð +ð +Ý��f˜kÑ*Ô*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +s   Á7BÂBÂBc                  ó¼   — g d¢} t          | ¬¦  «        }t          j        t          ¦  «        5  |                     g ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)rA   r  r  rA   rA   r¨   rù   rÓ   s     r&   Útest_non_unique_vocabr  �  s    € Ø%Ð%Ð%€EÝ eÐ,Ñ,Ô,€DÝ	Œ•zÑ	"Ô	"ð ð Ø�Š�‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ®AÁAÁAc                  ó�   — d} t           }d„ }t          j        || ¬¦  «        5   |¦   «          d d d ¦  «         d S # 1 swxY w Y   d S )Nz?np.nan is an invalid document, expected byte or unicode string.c                  óf   — t          ¦   «         } |                      dt          j        dg¦  «         d S )Núhello worldúhello hello)r   rÃ   r=  Únan)Úhvs    r&   Úfuncz0test_hashingvectorizer_nan_in_docs.<locals>.func«  s0   € ÝÑ Ô ˆØ
×Ò˜-­¬°Ð?Ñ@Ô@Ð@Ð@Ð@r(   rÊ   )rÎ   r…   r†   )r  Ú	exceptionr  s      r&   Ú"test_hashingvectorizer_nan_in_docsr  ¤  s§   € ð P€GÝ€IðAð Að Aõ 
Œ�y¨Ð	0Ñ	0Ô	0ð ð Øˆ‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   £;»?Á?c                  óp  — t          ddd ¬¦  «        } | j        sJ ‚|                      ddg¦  «                             ¦   «         }t	          |                     ¦   «         g d¢¦  «         |                      ddg¦  «                             ¦   «         }t	          |                     ¦   «         g d¢¦  «         d S )NTF)r‘  r(  r  r
  r  )rx   rx   rx   r   )r   r‘  rÃ   r  r	   Úravelr´   )r»   r½   rê   s      r&   Útest_tfidfvectorizer_binaryr  ³  s£   € å˜t¨U¸Ð>Ñ>Ô>€AØŒ8€O€O€Oà	�Š˜¨Ð6Ñ7Ô7×?Ò?ÑAÔA€AÝ�q—w’w‘y”y , , ,Ñ/Ô/Ð/Ø	
�Š�m ]Ð3Ñ	4Ô	4×	<Ò	<Ñ	>Ô	>€BÝ�r—x’x‘z”z < < <Ñ0Ô0Ð0Ð0Ð0r(   c                  ó˜   — t          d¬¦  «        } |                      t          ¦  «         t          | j        | j        j        ¦  «         d S )NTr9  )r   r°   r±   r   r8  rT  )r¼   s    r&   Útest_tfidfvectorizer_export_idfr  ¾  sA   € Ý 4Ð(Ñ(Ô(€DØ‡H‚H�^ÑÔÐÝ˜dœi¨¬Ô)9Ñ:Ô:Ð:Ð:Ð:r(   c                  óÒ   — t          dg¬¦  «        } t          | ¦  «        }|                      t          ¦  «         |                     t          ¦  «         |j        | j        k    sJ ‚d S )Nr2  r¨   )r   r   r°   rÄ   r³   )Ú
vect_vocabÚvect_vocab_clones     r&   Útest_vectorizer_vocab_cloner  Ä  se   € Ý ¨U¨GÐ4Ñ4Ô4€JÝ˜ZÑ(Ô(ÐØ‡N‚N•=Ñ!Ô!Ð!Ø×Ò�Ñ'Ô'Ð'ØÔ'¨:Ô+AÒAÐAÐAÐAÐAÐAr(   c                 óþ  — d} | ¦   «         }t          j        t          |¬¦  «        5  |                     d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          |¬¦  «        5  |                     d¦  «         d d d ¦  «         n# 1 swxY w Y   |                     ddg¦  «         t          j        t          |¬¦  «        5  |                     d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NzBIterable over raw text documents expected, string object received.rÊ   zhello world!ú	some textzsome other text)r…   r†   rÎ   rÃ   r°   r´   )rF   r  rä  s      r&   Ú&test_vectorizer_string_object_as_inputr  Ì  s´  € ð S€GØ
ˆ*‰,Œ,€Cå	Œ•z¨Ð	1Ñ	1Ô	1ð *ð *Ø×Ò˜.Ñ)Ô)Ð)ð*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *õ 
Œ•z¨Ð	1Ñ	1Ô	1ð  ð  Ø�Š�ÑÔÐð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  à‡G‚Gˆ[Ð+Ð,Ñ-Ô-Ð-å	Œ•z¨Ð	1Ñ	1Ô	1ð &ð &Ø�Š�nÑ%Ô%Ð%ð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &ð &ð &s5   ¨A
Á
AÁAÁ0BÂBÂBÃC2Ã2C6Ã9C6ÚX_dtypec                 óœ   — t          j        dd| d¬¦  «        }t          ¦   «                              |¦  «        }|j        |j        k    sJ ‚d S ©Né
   é N  é*   ©rY  r°  )r
   Úrandr   rÃ   rY  )r  r½   ÚX_transs      r&   Útest_tfidf_transformer_typer&  Þ  sN   € åŒ�B˜ W¸2Ð>Ñ>Ô>€AÝÑ Ô ×.Ò.¨qÑ1Ô1€GØŒ=˜AœGÒ#Ð#Ð#Ð#Ð#Ð#r(   zcsc_container, csr_containerc                 ó>  — t          j        ddt          j        d¬¦  «        } | |¦  «        } ||¦  «        }t	          ¦   «                              |¦  «        }t	          ¦   «                              |¦  «        }t          ||¦  «         |j        |j        k    sJ ‚d S r  )r
   r$  r=  r—  r   rÃ   r   rŸ  )Úcsc_containerÚcsr_containerr½   ÚX_cscÚX_csrÚX_trans_cscÚX_trans_csrs          r&   Útest_tfidf_transformer_sparser.  å  s›   € õ 	Œ�B˜¥R¤Z¸bÐAÑAÔA€AØˆM˜!ÑÔ€EØˆM˜!ÑÔ€Eå"Ñ$Ô$×2Ò2°5Ñ9Ô9€KÝ"Ñ$Ô$×2Ò2°5Ñ9Ô9€KÝ  ¨kÑ:Ô:Ð:ØÔ Ô!3Ò3Ð3Ð3Ð3Ð3Ð3r(   z0vectorizer_dtype, output_dtype, warning_expectedTFc                 óº  — t          j        g d¢¦  «        }t          | ¬¦  «        }d}|rIt          j        t
          |¬¦  «        5  |                     |¦  «        }d d d ¦  «         n# 1 swxY w Y   nZt          j        ¦   «         5  t          j	        dt
          ¦  «         |                     |¦  «        }d d d ¦  «         n# 1 swxY w Y   |j
        |k    sJ ‚d S )N)ÚnumpyÚscipyÚsklearn©rY  z'dtype' should be used.rÊ   r  )r=  rî  r   r…   r  r  rÃ   r  r  r  rY  )Úvectorizer_dtypeÚoutput_dtypeÚwarning_expectedr½   rõ   Úwarning_msg_matchÚX_idfs          r&   Útest_tfidf_vectorizer_typer9  ó  s_  € õ 	ŒÐ.Ð.Ð.Ñ/Ô/€AÝ Ð'7Ð8Ñ8Ô8€Jà1ÐØð 0ÝŒ\�+Ð->Ð?Ñ?Ô?ð 	0ð 	0Ø×,Ò,¨QÑ/Ô/ˆEð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0øõ Ô$Ñ&Ô&ð 	0ð 	0ÝÔ! '­;Ñ7Ô7Ð7Ø×,Ò,¨QÑ/Ô/ˆEð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0ð Œ;˜,Ò&Ð&Ð&Ð&Ð&Ð&s$   ÁA(Á(A,Á/A,Â0CÃCÃ
Crä  )ry   rx   r×  c                 óŒ  — | j         }t          j        d|› d�¦  «        }t          | t          ¦  «        rt
          rt          j        d¬¦  «         t          j        t          |¬¦  «        5  |  
                    dg¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          |¬¦  «        5  |                      dg¦  «         d d d ¦  «         n# 1 swxY w Y   t          | t          ¦  «        rLt          j        t          |¬¦  «        5  |                      dg¦  «         d d d ¦  «         d S # 1 swxY w Y   d S d S )NzInvalid value for ngram_range=z/ lower boundary larger than the upper boundary.ú*HashingVectorizer is not supported on PyPyr   rÊ   zgood news everyone)r|   ÚreÚescaper²   r   r   r…   Úxfailr†   rÎ   r°   rÃ   r´   )rä  Úinvalid_ranger  s      r&   Ú$test_vectorizers_invalid_ngram_ranger@    s  € ð ”O€MÝŒið	9¨ð 	9ð 	9ð 	9ñô €Gõ �#Õ(Ñ)Ô)ð J­hð JÝŒÐHÐIÑIÔIÐIå	Œ•z¨Ð	1Ñ	1Ô	1ð (ð (Ø�ŠÐ%Ð&Ñ'Ô'Ð'ð(ð (ð (ñ (ô (ð (ð (ð (ð (ð (ð (øøøð (ð (ð (ð (õ 
Œ•z¨Ð	1Ñ	1Ô	1ð 2ð 2Ø×ÒÐ/Ð0Ñ1Ô1Ð1ð2ð 2ð 2ñ 2ô 2ð 2ð 2ð 2ð 2ð 2ð 2øøøð 2ð 2ð 2ð 2õ �#Õ(Ñ)Ô)ð 2ÝŒ]�:¨WÐ5Ñ5Ô5ð 	2ð 	2Ø�MŠMÐ/Ð0Ñ1Ô1Ð1ð	2ð 	2ð 	2ñ 	2ô 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2øøøð 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð2ð 2s6   Á,BÂBÂBÂ5CÃCÃCÄD7Ä7D;Ä>D;c                 ó¨   — |                       ¦   «         }|                      ¦   «         }|                      ¦   «         }|                      |||¦  «        S r"   )rß   Úbuild_tokenizerr?  Ú_check_stop_words_consistency)Ú	estimatorrØ   ÚtokenizeÚ
preprocesss       r&   rC  rC  )  sM   € Ø×)Ò)Ñ+Ô+€JØ×(Ò(Ñ*Ô*€HØ×-Ò-Ñ/Ô/€JØ×2Ò2°:¸zÈ8ÑTÔTÐTr(   c                  óô  — d} d| z  }t          ¦   «         t          ¦   «         t          ¦   «         fD ]x}|                     g d¢¬¦  «         t	          j        t          |¬¦  «        5  |                     dg¦  «         d d d ¦  «         n# 1 swxY w Y   |`t          |¦  «        du sJ ‚Œyt          j        ¦   «         5  t          j        dt          ¦  «         |                     dg¦  «         d d d ¦  «         n# 1 swxY w Y   t          |¦  «        �J ‚|                     g d	¢¬¦  «         t	          j        t          |¬¦  «        5  |                     dg¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nz\['and', 'll', 've'\]z}Your stop_words may be inconsistent with your preprocessing. Tokenizing the stop words generated tokens %s not in stop_words.)úyou'veÚyouúyou'llÚANDr×   rÊ   r
  Fr  )rH  rI  rJ  ÚblahrK  )r   r   r   rÞ   r…   r  r  rÃ   Ú_stop_words_idrC  r  r  r  )Úlstrr  rä  s      r&   Ú'test_vectorizer_stop_words_inconsistentrO  0  sT  € à#€Dð	'à)-ñ	.ð õ
  Ñ!Ô!¥?Ñ#4Ô#4Õ6GÑ6IÔ6IÐJð ;ð ;ˆØ�ŠÐ"DÐ"DÐ"DˆÑEÔEÐEÝŒ\�+¨WÐ5Ñ5Ô5ð 	/ð 	/Ø×Ò˜}˜oÑ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð ÐÝ,¨SÑ1Ô1°UÐ:Ð:Ð:Ð:Ð:õ 
Ô	 Ñ	"Ô	"ð +ð +ÝÔ˜g¥{Ñ3Ô3Ð3Ø×Ò˜=˜/Ñ*Ô*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +õ )¨Ñ-Ô-Ð5Ð5Ð5ð ‡N‚NÐHÐHÐH€NÑIÔIÐIÝ	Œ•k¨Ð	1Ñ	1Ô	1ð +ð +Ø×Ò˜=˜/Ñ*Ô*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +s6   Á&B	Â	B	ÂB	Â=1C:Ã:C>ÄC>Å	E-Å-E1Å4E1r)  c                 ó<  —  | dt           j        ¬¦  «        }t           j        }|j                             |¦  «        |_        |j                             |¦  «        |_        ddddœ}t          ¦   «                              ||¦  «        }||j        j        k    sJ ‚dS )zò
    Check that CountVectorizer._sort_features preserves the dtype of its sparse
    feature matrix.

    This test is skipped on 32bit platforms, see:
        https://github.com/scikit-learn/scikit-learn/pull/11295
    for more details.
    )rŒ   rŒ   r3  r   rx   ry   )zscikit-learnrW   zgreat!N)r=  Úint64ÚindicesÚastypeÚindptrr   Ú_sort_featuresrY  )r)  r½   ÚINDICES_DTYPEr©   ÚXss        r&   Ú7test_countvectorizer_sort_features_64bit_sparse_indicesrX  L  s•   € ð 	ˆ�f¥B¤HÐ-Ñ-Ô-€Aõ ”H€MØ”	× Ò  Ñ/Ô/€A„IØŒx�Š˜}Ñ-Ô-€A„Hà"#¨1¸Ð:Ð:€Jå	Ñ	Ô	×	)Ò	)¨!¨ZÑ	8Ô	8€Bà˜BœJÔ,Ò,Ð,Ð,Ð,Ð,Ð,r(   Ú	Estimatorc                 ó‚  — ddig} | ¦   «         }t          |¦  «        du sJ ‚ | d„ dg¬¦  «        }t          |¦  «        dk    sJ ‚t          |¦  «        �J ‚|                     |¦  «          G d„ d	| ¦  «        } |dg¬
¦  «        }t          |¦  «        dk    sJ ‚ | d„ dg¬¦  «        }t          |¦  «        du sJ ‚d S )Nrr   r  Tc                 ó   — | d         S ©Nrr   r4   ©rò  s    r&   ú<lambda>z?test_stop_word_validation_custom_preprocessor.<locals>.<lambda>p  s
   € ¨1¨V¬9€ r(   Úand)rd   rØ   r  c                   ó   — e Zd Zd„ ZdS )úFtest_stop_word_validation_custom_preprocessor.<locals>.CustomEstimatorc                 ó   — d„ S )Nc                 ó   — | d         S r\  r4   r]  s    r&   r^  zktest_stop_word_validation_custom_preprocessor.<locals>.CustomEstimator.build_preprocessor.<locals>.<lambda>x  s
   € ˜Q˜vœY€ r(   r4   )Úselfs    r&   r?  zYtest_stop_word_validation_custom_preprocessor.<locals>.CustomEstimator.build_preprocessorw  s   € Ø&Ð&Ð&r(   N)Ú__name__Ú
__module__Ú__qualname__r?  r4   r(   r&   ÚCustomEstimatorra  v  s#   € € € € € ð	'ð 	'ð 	'ð 	'ð 	'r(   rh  r×   c                 óP   — t          j        d¦  «                             | ¦  «        S )Nz\w{1,})r<  ÚcompileÚfindall©r¤  s    r&   r^  z?test_stop_word_validation_custom_preprocessor.<locals>.<lambda>~  s   € �bœj¨Ñ3Ô3×;Ò;¸CÑ@Ô@€ r(   )ro   rØ   )rC  rÃ   )rY  r[  rä  rh  s       r&   Ú-test_stop_word_validation_custom_preprocessorrm  f  s*  € ð
 �[Ð!Ð"€Dà
ˆ)‰+Œ+€CÝ(¨Ñ-Ô-°Ð5Ð5Ð5Ð5à
ˆ)Ð!4Ð!4À%ÀÐ
IÑ
IÔ
I€CÝ(¨Ñ-Ô-°Ò8Ð8Ð8Ð8å(¨Ñ-Ô-Ð5Ð5Ð5Ø×Ò�dÑÔÐð'ð 'ð 'ð 'ð '˜)ñ 'ô 'ð 'ð ˆ/ e WÐ
-Ñ
-Ô
-€CÝ(¨Ñ-Ô-°Ò8Ð8Ð8Ð8à
ˆ)Ø@Ð@ÈeÈWðñ ô €Cõ )¨Ñ-Ô-°Ð5Ð5Ð5Ð5Ð5Ð5r(   zinput_type, err_type, err_msgÚfilenamer?   r]   z$'str' object has no attribute 'read'c                 ó  — t          | t          ¦  «        rt          rt          j        d¦  «         dg}t          j        ||¬¦  «        5   | d„ |¬¦  «                             |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr;  ú"this is text, not file or filenamerÊ   c                 ó*   — |                       ¦   «         S r"   r/   r]  s    r&   r^  z.test_callable_analyzer_error.<locals>.<lambda>’  s   €  Q§W¢W¡Y¤Y€ r(   ©r{   r^   )Ú
issubclassr   r   r…   r>  r†   rÃ   )rY  Ú
input_typeÚerr_typerú   r[  s        r&   Útest_callable_analyzer_errorrv  ƒ  sî   € õ �)Õ.Ñ/Ô/ð CµHð CÝŒÐAÑBÔBÐBØ0Ð1€DÝ	Œ�x wÐ	/Ñ	/Ô	/ð Vð VØˆ	Ð.Ð.°jÐAÑAÔA×OÒOÐPTÑUÔUÐUðVð Vð Vñ Vô Vð Vð Vð Vð Vð Vð Vð Vøøøð Vð Vð Vð Vð Vð Vs   Á
"A9Á9A=Â A=)Úmarksr{   c                 ó"   — t          | d¦  «        S )NÚr)Úopenrl  s    r&   r^  r^  ž  s   € �T # s™^œ^€ r(   c                 ó*   — |                       ¦   «         S r"   )Úreadrl  s    r&   r^  r^  ž  s   € ¸¿º¹¼€ r(   rt  c                 ó¾   — dg}t          j        t          t          f¦  «        5   | ||¬¦  «                             |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrp  rr  )r…   r†   ÚFileNotFoundErrorÚAttributeErrorrÃ   )rY  r{   rt  r[  s       r&   Ú&test_callable_analyzer_change_behaviorr€  •  s½   € ð 1Ð1€DÝ	ŒÕ)­>Ð:Ñ	;Ô	;ð Kð KØˆ	˜8¨:Ð6Ñ6Ô6×DÒDÀTÑJÔJÐJðKð Kð Kñ Kô Kð Kð Kð Kð Kð Kð Kð Køøøð Kð Kð Kð Kð Kð Ks   ¤!AÁAÁAc                 ój  — d„ }t          |t          ¦  «        rt          rt          j        d¦  «         |                      d¦  «        }|                     d¦  «         t          j        t          d¬¦  «        5   ||d¬¦  «         	                    |g¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	Nc                 ó    — t          d¦  «        ‚)NÚtesting)Ú	Exceptionrl  s    r&   r{   z6test_callable_analyzer_reraise_error.<locals>.analyzer¬  s   € Ý˜	Ñ"Ô"Ð"r(   r;  zfile.txtzsample content
rƒ  rÊ   r]   rr  )
rs  r   r   r…   r>  ÚjoinÚwriter†   r„  rÃ   )ÚtmpdirrY  r{   Úfs       r&   Ú$test_callable_analyzer_reraise_errorr‰  §  s  € ð
#ð #ð #õ �)Õ.Ñ/Ô/ð CµHð CÝŒÐAÑBÔBÐBà�Š�JÑÔ€AØ‡G‚GÐÑÔÐå	Œ•y¨	Ð	2Ñ	2Ô	2ð Fð FØˆ	˜8¨6Ð2Ñ2Ô2×@Ò@À!ÀÑEÔEÐEðFð Fð Fñ Fô Fð Fð Fð Fð Fð Fð Fð Føøøð Fð Fð Fð Fð Fð Fs   Á9"B(Â(B,Â/B,zjstop_words, tokenizer, preprocessor, ngram_range, token_pattern,analyzer, unused_name, ovrd_name, ovrd_msgrH  rJ  r²  r€   z'stop_words'ú
'analyzer'ú	!= 'word'c                 ó*   — |                       ¦   «         S r"   r/   r$   s    r&   r^  r^  Ï  ó   € �a—g’g‘i”i€ r(   z'tokenizer'c                 ó*   — |                       ¦   «         S r"   r/   r$   s    r&   r^  r^  Ú  r�  r(   ú\w+ru   ú'token_pattern'zis not Nonec                 ó*   — |                       ¦   «         S r"   ©r#   r$   s    r&   r^  r^  æ  r�  r(   c                 ó*   — |                       ¦   «         S r"   r’  r$   s    r&   r^  r^  é  r�  r(   z'preprocessor'zis callablerw   c                 ó*   — |                       ¦   «         S r"   r’  r$   s    r&   r^  r^  ô  r�  r(   z'ngram_range')	NNNr²  r�  r€   r�  rŠ  r‹  c
                 ó  — t           }
 | ¦   «         }|                     ||||||¬¦  «         d|›d|›d|	›�}t          j        t          |¬¦  «        5  |                     |
¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)rØ   ro   rd   r|   rï   r{   zThe parameter z will not be used since ú rÊ   )r±   rÞ   r…   r  r  r°   )rF   rØ   ro   rd   r|   rï   r{   Úunused_nameÚ	ovrd_nameÚovrd_msgr@  r¼   rÏ   s                r&   Útest_unused_parameters_warnrš  ¹  sð   € õr  €Jàˆ:‰<Œ<€DØ‡O‚OØØØ!ØØ#Øð ñ ô ð ð ð 	ˆˆØˆ	ˆ	Øˆð€Cõ
 
Œ•k¨Ð	-Ñ	-Ô	-ð ð Ø�Š�ÑÔÐðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ÁA6Á6A:Á=A:zVectorizer, Xrx   ry   )rä   Úbarr‚   )rä   Úbazc                 óŒ   —  | ¦   «         }t          |d¦  «        rJ ‚|                     |¦  «         t          |d¦  «        rJ ‚d S )NÚn_features_in_)r<  r°   )rF   r½   rõ   s      r&   Útest_n_features_inrŸ  &  sU   € ð �‘”€JÝ�zÐ#3Ñ4Ô4Ð4Ð4Ð4Ø‡N‚N�1ÑÔÐÝ�zÐ#3Ñ4Ô4Ð4Ð4Ð4Ð4Ð4r(   c                  ó¦   — t          d¬¦  «        } |                      ddg¦  «        j        }|                      ddg¦  «        j        }||k    sJ ‚d S )Nrx   ru  ÚhelloÚworld)r   r°   r³   )rä  Úvocab1Úvocab2s      r&   Ú)test_tie_breaking_sample_order_invariancer¥  5  s]   € õ  qÐ
)Ñ
)Ô
)€CØ�WŠW�g˜wÐ'Ñ(Ô(Ô4€FØ�WŠW�g˜wÐ'Ñ(Ô(Ô4€FØ�VÒÐÐÐÐÐr(   c                  óz   — t          dd¬¦  «        } |                      dg¦  «        j        }|d         dk    sJ ‚d S )Ni@B )ry   r‚   )rX  r|   z22pcs efuturer   )r   r´   rR  )ÚhashingrR  s     r&   Ú2test_nonnegative_hashing_vectorizer_result_indicesr¨  >  sD   € õ  ¨7ÀÐGÑGÔG€GØ×Ò Ð 1Ñ2Ô2Ô:€GØ�1Œ:˜Š?ˆ?ˆ?ˆ?ˆ?ˆ?r(   c                 ó>   —  | ¦   «         }t          |d¦  «        rJ ‚dS )z0Check that vectorizers do not define set_output.Ú
set_outputN)r<  )rY  rž   s     r&   Ú'test_vectorizers_do_not_have_set_outputr«  F  s+   € ð
 ˆ)‰+Œ+€CÝ�s˜LÑ)Ô)Ð)Ð)Ð)Ð)Ð)r(   c                 óâ  — t          j        ddt          j        d¬¦  «        } | |¦  «        }|                     ¦   «         }t          ¦   «                              |¦  «        }|                     |d¬¦  «        }t          ||¦  «         ||usJ ‚|                     |d¬¦  «        }||u sJ ‚t          j
        t          ¦  «        5  t          ||¦  «         ddd¦  «         dS # 1 swxY w Y   dS )	zJCheck the behaviour of TfidfTransformer.transform with the copy parameter.r   r!  r"  r#  T)rà  FN)r
   r$  r=  r—  rà  r   r°   r´   r   r…   r†   ÚAssertionError)r)  r½   r+  ÚX_csr_originalÚtransformerÚX_transforms         r&   Útest_tfidf_transformer_copyr±  O  s;  € õ 	Œ�B˜¥R¤Z¸bÐAÑAÔA€AØˆM˜!ÑÔ€Eð —Z’Z‘\”\€Nå"Ñ$Ô$×(Ò(¨Ñ/Ô/€Kà×'Ò'¨°DÐ'Ñ9Ô9€KÝ  ¨Ñ7Ô7Ð7Ø˜eÐ#Ð#Ð#Ð#à×'Ò'¨°EÐ'Ñ:Ô:€KØ˜%ÐÐÐÐÝ	Œ•~Ñ	&Ô	&ð <ð <Ý$ U¨NÑ;Ô;Ð;ð<ð <ð <ñ <ô <ð <ð <ð <ð <ð <ð <ð <øøøð <ð <ð <ð <ð <ð <s   ÃC$Ã$C(Ã+C()‹rØ  r<  r  Úcollectionsr   Úcollections.abcr   Ú	functoolsr   Úior   Ú	itertoolsr   r0  r=  r…   Únumpy.testingr   r	   r1  r
   Úsklearn.baser   Úsklearn.feature_extraction.textr   r   r   r   r   r   r   r   Úsklearn.model_selectionr   r   r   Úsklearn.pipeliner   Úsklearn.svmr   Úsklearn.utils._testingr   r   r   r   Úsklearn.utils.fixesr   r   r   r    r±   r¹  rÄ   r'   r-   r1   r5   rC   rE   ÚmarkÚparametrizers   r}   rŠ   rš   rŸ   r£   r¿   rÈ   rÐ   rÔ   râ   rç   rë   r÷   rû   r	  r  r  r>  r%  r)  rR  rU  rb  rn  rs  r�  r‰  rŒ  r”  r˜  r¬  rÆ  rÉ  rÌ  rÑ  rÕ  rá  rp   r?  rB  rç  rõ  rù  rû  rý  r   r  r  r  r  r  r  r  r’  r—  r&  r.  Úint32rQ  r9  r@  rC  rO  rX  rm  r~  r  rv  Úparamr€  r‰  rš  rŸ  r¥  r¨  r«  r±  r4   r(   r&   ú<module>rÃ     s,  ðØ €€€Ø 	€	€	€	Ø €€€Ø #Ð #Ð #Ð #Ð #Ð #Ø #Ð #Ð #Ð #Ð #Ð #Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ø €€€Ø GÐ GÐ GÐ GÐ GÐ GÐ GÐ GØ Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð ð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð TÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SØ %Ð %Ð %Ð %Ð %Ð %Ø !Ð !Ð !Ð !Ð !Ð !ðð ð ð ð ð ð ð ð ð ð ð ð SÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ RÐ Rð€ðÐ ð Ð!2Ñ2€ð,ð ,ð ,ð ð  ð  ðð ð ð$ð $ð $ð!0ð !0ð !0ðH.ð .ð .ð* „×Ò˜¨Ð9JÐ'KÑLÔLð: ð : ñ MÔLð: ðz ð  ð  ð<ð ð ð&&ð &ð &ð4&ð &ð &ð()ð )ð )ð.&ð &ð &ð*
+ð 
+ð 
+ð&ð &ð &ð$ð $ð $ð0ð 0ð 0ðEð Eð Eð&ð &ð &ð4ð 4ð 4ð&ð ð ð&)ð )ð )ð*<ð <ð <ðð ð ð  „×ÒØð	Mð ñ ô ð&ð &ñô ð&ð&ð ð ðdð dð dðN5ð 5ð 5ð: ð#?ð #?ñ „ð#?ðLD/ð D/ð D/ðN „×Ò˜¨¸Ð'IÑJÔJð>ð >ñ KÔJð>ð:ð :ð :ð4-ð -ð -ð$-ð -ð -ð$(ð (ð (ð( ð!ð !ñ „ð!ð4 „×Ò˜¨¸Ð'IÑJÔJð<ð <ñ KÔJð<ð>!1ð !1ð !1ðH$1ð $1ð $1ðN
3ð 
3ð 
3ð ðHð Hñ „ðHð0"ð "ð "ðð ð ð< „×ÒØàÔ&ØÔ*ØÔ'ðñô ð
ð 
ñô ð
ð
ð 
ð 
ð8
ð 
ð 
ð:Yð Yð YðQð Qð Qðð ð ð +ð +ð +ðð ð ð ðð ñ „ðð1ð 1ð 1ð;ð ;ð ;ðBð Bð Bð „×ÒØ�? OÐ5FÐGñô ð&ð &ñô ð&ð „×Ò˜ R¤Z°´Ð$<Ñ=Ô=ð$ð $ñ >Ô=ð$ð „×ÒØ" G G¨N¸NÑ$KÔ$Kñô ð4ð 4ñô ð4ð „×ÒØ6à	Œ�2”:˜tÐ$Ø	Œ�2”:˜tÐ$Ø	Œ�R”Z Ð'Ø	Œ�R”Z Ð'ð	ñô ð'ð 'ñô ð'ð „×ÒØ	àÐ fÐ-Ñ-Ô-Øˆ FÐ+Ñ+Ô+Øˆ FÐ+Ñ+Ô+ðñô ð2ð 2ñô ð2ð,Uð Uð Uð ð+ð +ñ „ð+ð6 Ø„×Ò˜¨.Ñ9Ô9ð-ð -ñ :Ô9ñ „ð-ð0 Ø„×ÒØ�/ ?Ð4EÐFñô ð6ð 6ñô ñ „ð6ð2 „×ÒØ�/ ?Ð4EÐFñô ð „×ÒØ#à	Ð&¨Ð+Ø	�Ð!GÐHðñô ðVð Vñô ñô ðVð „×ÒØàØØˆŒÐ&¨mÐ<Ñ<Ô<ðñô ð „×ÒØÐ+Ð+Ð-CÐ-CÐDñô ð „×Ò˜¨°
Ð';Ñ<Ô<ðKð Kñ =Ô<ñô ñô ðKð „×ÒØ�/ ?Ð4EÐFñô ðFð Fñô ðFð „×ÒØ�?Ð$5°ÐGñô ð „×Òð	5ð
 �xÐ ØØØØØØØØð
	
ð ØÐØØØØØØØð
	
ð ØÐØØØØØØØð
	
ð ØØÐØØØÐØØØð
	
ð ØØØØØÐØØØð
	
ð
	
ðqCñIô IðTð ñUIô Iñô ðZð@ „×ÒØà	 Q¨qÐ1Ð1¸1ÀQÐ3GÐ3GÐHÐIØ	˜.Ð)ðñô ð5ð 5ñô ð5ðð ð ð ðð ñ „ðð „×ÒØ�/ ?Ð4DÐFWÐXñô ð*ð *ñô ð*ð „×Ò˜¨.Ñ9Ô9ð<ð <ñ :Ô9ð<ð <ð <r(   