1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
U
¬ý°dî®ã@sBddlmZddlZddlZddlZddlZddlmm    Z
ddl m Z ddl Zddl mZmZddlmZddlmZddlmZejZejdd„ƒZejd    d
„ƒZejd d „ƒZejd d„ƒZejdd„ƒZejdd„ƒZ ejdd„ƒZ!ejdd„ƒZ"ejdd„ƒZ#ejdd„ƒZ$ejdd„ƒZ%ejdd„ƒZ&ejdd „ƒZ'ejd!d"„ƒZ(ejd#d$„ƒZ)ejd%d&„ƒZ*ejd'd(„ƒZ+ejd)d*„ƒZ,ejd+d,„ƒZ-ejd-d.„ƒZ.ejd/d0„ƒZ/ejd1d2„ƒZ0ejd3d4„ƒZ1ejd5d6„ƒZ2ejd7d8„ƒZ3ejd9d:„ƒZ4ejd;d<„ƒZ5ejd=d>„ƒZ6ejd?d@„ƒZ7GdAdB„dBƒZ8ej9 :dCej;ej<fej=ej>fej?ej@fejAejBfejCejDfejEejFfg¡dDdE„ƒZGej9 :dFdGdHdIdJdKdGdLdMdNdOg
¡dPdQ„ƒZHej9 :dFdRdSdTdUdVdWdXdYdZg    ¡ej9 :d[dd\d]g¡d^d_„ƒƒZIej9 :d`d dddddg¡dadb„ƒZJej9 :d`ddd.g¡dcdd„ƒZKGdedf„dfƒZLGdgdh„dhƒZMGdidj„djƒZNGdkdl„dlƒZOGdmdn„dnƒZPdodp„ZQej9 :dqejRdrfejSdrfejTdsfejUdsfejVdsfejWdsfejXdtfejYdufejZdtfej[dufg
¡dvdw„ƒZ\ej9 :dxej]ej^ejSejUejWej_ej`ejaejbejcej[ejZejdejeejfg¡dydz„ƒZgej9 :d{d|dg¡d}d~„ƒZhej9 :dde id€d€dg¡e idgd‚d€g¡g¡ej9 :dƒd„d…g¡d†d‡„ƒƒZje
jke
jlej9 :dƒd„dˆg¡d‰dŠ„ƒƒƒZmej9 :d‹dŒdg¡dŽd„ƒZnej9 :dd‘d’d“g¡d”d•„ƒZoej9 :d–ejpejqejrejsejteued—dƒg¡ej9 :d˜d™dšd›dœddždŸg¡d d¡„ƒƒZvdS)¢é)ÚpartialN)Úis_integer_dtype)ÚSeriesÚisna)Únanops)Ú DatetimeArrayc    cs,| ¡}| tdd¡dVW5QRXdS)NÚ_USE_BOTTLENECKF)ÚcontextÚsetattrr)Z monkeypatchÚm©r úOd:\z\workplace\vscode\pyvenv\venv\Lib\site-packages\pandas/tests/test_nanops.pyÚdisable_bottlenecks
rcCsdS)N©é ér r r r r Ú    arr_shapesrcCstj d¡tjj|ŽS)Néã+)ÚnpÚrandomÚseedÚrandn©rr r r Ú    arr_float$s rcCs ||dS)Nùð?r ©rr r r Ú arr_complex*srcCstj d¡tj dd|¡S)Nréöÿÿÿé
©rrrÚrandintrr r r Úarr_int/s r!cCs tj d¡tj dd|¡dkS)Nrrérrr r r Úarr_bool5s r#cCst |¡ d¡S)NÚS©rÚabsÚastyperr r r Úarr_str;sr(cCst |¡ d¡S)NÚUr%rr r r Úarr_utf@sr*cCs"tj d¡tj dd|¡ d¡S)Nrré NúM8[ns]©rrrr r'rr r r Úarr_dateEs r.cCs"tj d¡tj dd|¡ d¡S)Nrrr+úm8[ns]r-rr r r Ú
arr_tdeltaKs r0cCst tj|¡S©N)rÚtileÚnanrr r r Úarr_nanQsr4cCst ||g¡Sr1©rÚvstack)rr4r r r Ú arr_float_nanVsr7cCst ||g¡Sr1r5)r4rr r r Úarr_nan_float1[sr8cCst ||g¡Sr1r5©r4r r r Ú arr_nan_nan`sr:cCs
|tjSr1)rÚinfrr r r Úarr_infesr<cCst ||g¡Sr1r5)rr<r r r Ú arr_float_infjsr=cCst ||g¡Sr1r5©r4r<r r r Ú arr_nan_infosr?cCst |||g¡Sr1r5)rr4r<r r r Úarr_float_nan_inftsr@cCst |||g¡Sr1r5r>r r r Úarr_nan_nan_infysrAc CsJt | d¡| d¡| d¡| d¡| d¡| d¡| d¡| d¡g¡S)NÚO)rr6r')rr!r#rr(r*r.r0r r r Úarr_obj~søÿrCc
Cs0tjdd||dW5QR£SQRXdS©NÚignore©Úinvalidr©rÚerrstater9r r r Ú arr_nan_nanjsrJc
Cs2tjddt ||g¡W5QR£SQRXdS©NrErF©rrIr6)rrJr r r Úarr_complex_nan–srMc
Cs,tjdd|dW5QR£SQRXdSrDrH)r<r r r Ú arr_nan_infjœsrNc
Cs2tjddt ||g¡W5QR£SQRXdSrKrL)rrNr r r Úarr_complex_nan_infj¢srOcCs|dd…dfS©Nrr rr r r Ú arr_float_1d¨srQcCs|dd…dfSrPr r9r r r Ú
arr_nan_1d­srRcCs|dd…dfSrPr )r7r r r Úarr_float_nan_1d²srScCs|dd…dfSrPr )Úarr_float1_nanr r r Úarr_float1_nan_1d·srUcCs|dd…dfSrPr )r8r r r Úarr_nan_float1_1d¼srVc@s¨eZdZdd„Zdd„ZdBdd„ZdCd    d
„ZdDd d „ZdEd d„ZdFdd„Z    e
j   de jejfe jejfg¡dd„ƒZdd„Zdd„Zdd„Ze
j   dedƒ¡dd„ƒZe
j   dedƒ¡dd„ƒZeje
j   dedƒ¡d d!„ƒƒZe
j   de jejfe jej fg¡d"d#„ƒZ!dGd$d%„Z"d&d'„Z#d(d)„Z$dHd*d+„Z%ejd,d-„ƒZ&ejd.d/„ƒZ'd0d1„Z(d2d3„Z)d4d5„Z*d6d7„Z+d8d9„Z,ejd:d;„ƒZ-ejd<d=„ƒZ.ejd>d?„ƒZ/d@dA„Z0dS)IÚTestnanopsDataFramec Csðtj d¡dt_d}tjj|Ž|_tjj|Ž|_|j|jd|_tj     dd|¡|_
tj     dd|¡dk|_ t  |j¡  d    ¡|_t  |j¡  d
¡|_tj     dd |¡  d ¡|_tj     dd |¡  d ¡|_t tj|¡|_t |j|jg¡|_t |j|jg¡|_t |j|jg¡|_t |j|jg¡|_|jtj|_t |j|jg¡|_t |j|jg¡|_t |j|j|jg¡|_t |j|j|jg¡|_t |j  d¡|j
  d¡|j   d¡|j  d¡|j  d¡|j  d¡|j  d¡|j  d¡g¡|_ tj!ddL|j|jd|_"t |j|j"g¡|_#|jd|_$t |j|j$g¡|_%W5QRX|j|_&|j|_'|j|_(|j|_)|j|_*|j|_+|jdd…df|_,|jdd…df|_-|jdd…df|_.|jdd…df|_/|jdd…df|_0|jdd…df|_1dS)NrFrrrrrr"r$r)r+r,r/rBrErF)2rrrrrrrÚ
arr_float1rr r!r#r&r'r(r*r.r0r2r3r4r6r7rTr8r:r;r<r=r?r@rArCrIrJrMrNrOÚ arr_float_2dÚ arr_float1_2dÚ
arr_nan_2dÚarr_float_nan_2dÚarr_float1_nan_2dÚarr_nan_float1_2drQÚ arr_float1_1drRrSrUrV)Úselfrr r r Ú setup_methodÂsd 
 
 
 
 
 
 
 
øÿ  z TestnanopsDataFrame.setup_methodcCs
tt_dSr1)Úuse_bnrr©r`r r r Úteardown_methodsz#TestnanopsDataFrame.teardown_methodTcCs>t|d|ƒ}|dkrLt|dƒrL|jrL|j|jkrLtj||jdgddd}ztj|||dWnØtk
r8t|dƒrˆ|j    dkrˆ‚t|dƒrž|j    j
dkr ‚|j    j
d    krî|j    j
d    krÆ|  |j    ¡}qüttd
ƒrÔd nd }|  |¡}|  |¡}n|j    j
d    krü‚tjt  |¡t  |¡|dtjt  |¡t  |¡|dYnXdS) NZasm8rÚshape©Úaxis©Ú check_dtypeÚdtyper/)ÚcrBrBZ
complex128Úc16Úf8)ÚgetattrÚhasattrÚndimrerÚsplitÚtmÚassert_almost_equalÚAssertionErrorrjÚkindr'ÚrealÚimag)r`ÚtargÚresrgriZ
cast_dtyper r r Ú check_resultss6 ÿþý
ü  
  z!TestnanopsDataFrame.check_resultsNcKs¤tt|jƒƒdgD]8}    |r"|n|}
|rP|rPt|
ƒ ¡rP||
fd|    i|—Ž} n||
fd|    i|—Ž} |
jtkr¢|tjks‚|tjkr¢t    | tj
ƒrš|   t ¡} nt | ƒ} ||f|    |dœ|—Ž} |j | | |    |d|rô||fd|    i|—Ž} |j | | |    |d|    dkr$||fd|i|—Ž} |j | | |    |d|r|    dkr||f|Ž} |j | | |    |dq|jdkr`dStj|ddd} tj|ddd}|j||| |f|||d    œ|—ŽdS)
Nrg©rgÚskipnarhr|éréÿÿÿÿrf)r|riÚempty_targfunc)ÚlistÚrangerprÚallrjÚobjectrÚanyÚ
isinstanceÚndarrayr'ÚboolrzÚtakeÚcheck_fun_data)r`ÚtestfuncÚtargfuncÚ    testarvalÚ    targarvalr|rirÚkwargsrgZ targartempvalrxryZ
testarval2Z
targarval2r r r r‰,sP  
ÿÿ  
   üùøz"TestnanopsDataFrame.check_fun_datac
Ksb|}| d¡r,t||dd…ƒr,|dd…}t||ƒ}t||ƒ}    |j||||    f||dœ|—ŽdS)NZ_nanéüÿÿÿ)r|r)Úendswithrornr‰)
r`rŠr‹Ztestarr|rrŽZtargarrŒrr r r Ú    check_funds  
 
üúùzTestnanopsDataFrame.check_func     Ks¬|j||d|f|    Ž|j||d|f|    Ž|j||d|f|    Ž|j||d|f|    Ž|j d¡|j d¡|j d¡g}
|rŠ|j||d|f|    Ž|rà|j||d|f|    Ž|j||d|f|    Ž|rÎ|j||d    |f|    Ž|
|j d¡g7}
|r||jƒ|j||d
|f|    Ž|
|j d¡g7}
|rhz||jƒWntk
r@Yn(X|j||d |f|    Ž|
|j d¡g7}
|r¨t     
|
¡|_ |d kr”t |j ||d }|j||d|f|    ŽdS)Nrr7r!r#rBr4rrMrJr.r0Úconvert)ÚfuncÚ allow_complexrC)r‘rr'r!r#rr.r0Ú    TypeErrorrr6rCrÚ _badobj_wrap) r`rŠr‹r|r”Ú allow_all_nanÚ
allow_dateÚ allow_tdeltaÚ    allow_objrŽÚobjsr r r Ú
check_funswsH 
 
 
ý
 
ÿzTestnanopsDataFrame.check_funscKs2|jjdkr&|r| d¡}n
| d¡}||f|ŽS)NrBrlrm)rjrur')r`Úvaluer“r”rŽr r r r–°s
 
z TestnanopsDataFrame._badobj_wrapz nan_op,np_opcCs|j|||ddddS)NF)r—r˜)rœ©r`Znan_opZnp_opr|r r r Útest_nan_funcs¸sz"TestnanopsDataFrame.test_nan_funcscCs |jtjtj|ddtjddS)NF)r˜rir)rœrÚnansumrÚsum©r`r|r r r Ú test_nansum¾súzTestnanopsDataFrame.test_nansumcCs|jtjtj|ddddS)NF)ršr˜)rœrÚnanmeanrÚmeanr¢r r r Ú test_nanmeanÈsÿz TestnanopsDataFrame.test_nanmeanc    CsBtjdd,t dt¡|jtjtj|ddddW5QRXdS)NT©ÚrecordrEFr’)r”r˜rš)    ÚwarningsÚcatch_warningsÚ simplefilterÚRuntimeWarningrœrÚ    nanmedianrÚmedianr¢r r r Útest_nanmedianÍs úz"TestnanopsDataFrame.test_nanmedianÚddoféc    Cs |jtjtj|ddd|ddS©NFr’)r”r˜ršr°)rœrÚnanvarrÚvar©r`r°r|r r r Ú test_nanvarÙsùzTestnanopsDataFrame.test_nanvarc    Cs |jtjtj|ddd|ddSr²)rœrÚnanstdrÚstdrµr r r Ú test_nanstdåsùzTestnanopsDataFrame.test_nanstdc CsDddlm}tjdd"|jtj||dddd|dW5QRXdS)Nr)ÚsemrErFFr’)r”r˜r™ršr°)Ú scipy.statsrºrrIrœrÚnansem)r`r°r|rºr r r Ú test_nansemñs øzTestnanopsDataFrame.test_nansemc    Cs:tjdd$t dt¡|j|||ddW5QRXdS)NTr§rEF©rš)r©rªr«r¬rœržr r r Útest_nanops_with_warningss z-TestnanopsDataFrame.test_nanops_with_warningscCsV|||ƒ}t ||¡}t|ƒ}|jr.d||<n$t|dƒr@| ¡sNt|dƒsR|rRd}|S)Nr~r‚)rÚminrrpror‚)r`rrgr“ryZnansZnullnanr r r Ú_argminmax_wrap
s
 
ÿþýüz#TestnanopsDataFrame._argminmax_wrapc    CsLtjdd6t dt¡t|jtjd}|jt    j
||ddW5QRXdS©NTr§rE©r“Fr¾) r©rªr«r¬rrÁrZargmaxrœrÚ    nanargmax©r`r|r“r r r Útest_nanargmaxs z"TestnanopsDataFrame.test_nanargmaxc    CsLtjdd6t dt¡t|jtjd}|jt    j
||ddW5QRXdSrÂ) r©rªr«r¬rrÁrZargminrœrÚ    nanargminrÅr r r Útest_nanargmins z"TestnanopsDataFrame.test_nanargmincCstt|jjtjƒs| d¡}|||dd}t|tjƒrXd|tj||dtj||dk<|St |¡t |¡krpdS|S)NrmF)rgZbiasrrfç)    r…rjÚtyperZfloatingr'r†ÚmaxrÀ)r`Úvaluesrgr“Úresultr r r Ú_skew_kurt_wrap%s
  z#TestnanopsDataFrame._skew_kurt_wrapc    CsNddlm}t|j|d}tjdd|jtj||ddddW5QRXdS)Nr)ÚskewrÃrErFF©r”r˜r™)    r»rÏrrÎrrIrœrÚnanskew)r`r|rÏr“r r r Ú test_nanskew1s úz TestnanopsDataFrame.test_nanskewc    CsZddlm}t|dd}t|j|d}tjdd|jtj||dddd    W5QRXdS)
Nr)ÚkurtosisT)ZfisherrÃrErFFrÐ)    r»rÓrrÎrrIrœrÚnankurt)r`r|rÓZfunc1r“r r r Ú test_nankurt@s  úz TestnanopsDataFrame.test_nankurtcCs |jtjtj|ddtjddS)NF)r˜r™r)rœrÚnanprodrÚprodr¢r r r Ú test_nanprodPsúz TestnanopsDataFrame.test_nanprodcKs~||j|jf|Ž}||j|jfdt|jƒdi|—Ž}t ||¡t ||¡||j|jf|Ž}||j|jfdt|jƒdi|—Ž}t ||¡t ||¡tj}    ||j    |jf|Ž}
||j|j    f|Ž} ||j    |j    f|Ž} ||j|j
f|Ž} ||j|j
fdt|jƒdi|—Ž}||j|jfdt|jƒdi|—Ž}t |    |
¡t |    | ¡t |    | ¡t |    | ¡t |    |¡t |    |¡dS©NZ min_periodsr}) rYrZÚlenrrrsr\r]rr3r[r^©r`ZcheckfunÚtarg0Útarg1rŽZres00Zres01Zres10Zres11Útarg2Zres20Zres21Zres22Zres23Zres24Zres25r r r Úcheck_nancorr_nancov_2dZsbþ ýü  þ ýü  þ ýüþ ýü     z+TestnanopsDataFrame.check_nancorr_nancov_2dcKs~||j|jf|Ž}||j|jfdt|jƒdi|—Ž}t ||¡t ||¡||j|jf|Ž}||j|jfdt|jƒdi|—Ž}t ||¡t ||¡tj}    ||j    |jf|Ž}
||j|j    f|Ž} ||j    |j    f|Ž} ||j|j
f|Ž} ||j|j
fdt|jƒdi|—Ž}||j|jfdt|jƒdi|—Ž}t |    |
¡t |    | ¡t |    | ¡t |    | ¡t |    |¡t |    |¡dSrÙ) rQr_rÚrrrsrSrUrr3rRrVrÛr r r Úcheck_nancorr_nancov_1d‡sbþ ýü  þ ýü  þ ýüþ ýü     z+TestnanopsDataFrame.check_nancorr_nancov_1dcCs€t |j|j¡d}t |jj|jj¡d}| tj||¡t |j|j    ¡d}t |jj|j    j¡d}|j
tj||dddS©N©rr}Zpearson©Úmethod© rÚcorrcoefrYrZÚflatrßrÚnancorrrQr_rà©r`rÜrÝr r r Ú test_nancorr´s z TestnanopsDataFrame.test_nancorrcCs„t |j|j¡d}t |jj|jj¡d}|jtj||ddt |j|j    ¡d}t |jj|j    j¡d}|j
tj||dddSrárårér r r Útest_nancorr_pearson¼s z(TestnanopsDataFrame.test_nancorr_pearsoncCsˆddlm}||j|jƒd}||jj|jjƒd}|jtj||dd||j|j    ƒd}||jj|j    jƒd}|j
tj||dddS)Nr)Ú
kendalltauZkendallrã) r»rìrYrZrçrßrrèrQr_rà)r`rìrÜrÝr r r Útest_nancorr_kendallÄs z(TestnanopsDataFrame.test_nancorr_kendallcCsˆddlm}||j|jƒd}||jj|jjƒd}|jtj||dd||j|j    ƒd}||jj|j    jƒd}|j
tj||dddS)Nr)Ú    spearmanrZspearmanrã) r»rîrYrZrçrßrrèrQr_rà)r`rîrÜrÝr r r Útest_nancorr_spearmanÏs z)TestnanopsDataFrame.test_nancorr_spearmanc    Csbt |j|j¡d}t |jj|jj¡d}d}tjt|d|jt    j
||ddW5QRXdS)Nrâz;Unknown method 'foo', expected one of 'kendall', 'spearman'©ÚmatchÚfoorã) rrærYrZrçÚpytestÚraisesÚ
ValueErrorràrrè)r`rÜrÝÚmsgr r r Útest_invalid_methodÚs
z'TestnanopsDataFrame.test_invalid_methodcCs|t |j|j¡d}t |jj|jj¡d}| tj||¡t |j|j    ¡d}t |jj|j    j¡d}| 
tj||¡dS)Nrâ) rZcovrYrZrçrßrZnancovrQr_ràrér r r Ú test_nancovâs zTestnanopsDataFrame.test_nancov)T)TN)N)TTTTT)T)NN)NN)1Ú__name__Ú
__module__Ú __qualname__rardrzr‰r‘rœr–róÚmarkÚ parametrizerÚnananyrr„Únanallr‚rŸr£r¦r¯rr¶r¹ÚtdZskip_if_no_scipyr½ÚnanminrÀÚnanmaxrËr¿rÁrÆrÈrÎrÒrÕrØrßràrêrërírïr÷rør r r r rWÁsn@
.ø
9ÿ
÷
9
ÿ
 
 
 
 ÿ
 
 
 
 
 
--
 
 
 
 
rWzop,nanopcCsT| d¡}| d¡}|||ƒ}| d¡}| d¡}| d¡}    | d¡}
| d¡} |jrP|||ƒ} t || ¡|jdkrˆt ||g¡} nt ||g¡} ||    |
ƒ}tj| |dd|}||    | ƒ}tj||ddtj|d    d
d }tj|d    d
d }tj|d    d
d }tj|d    d
d }tj|    d    d
d }    tj|
d    d
d }
tj| d    d
d } tj|d    d
d }qPdS) Nrr4r:r7r8r}Frhrr~rf)    Úgetfixturevaluerprrrsrr6ÚhstackÚassert_numpy_array_equalrˆ)ÚrequestÚopZnanoprrrXrÜr4r:r7rTr8Úres0rÝZres1rÞZres2r r r Útest_nan_comparisonës6
 
 
 
 
 
 
 
 
 
 
 
r    z arr, correct)rF)r!F)r#F)r(F)r*F)rMF)rJF)rNT)rOTcCsX| |¡}t|ddƒrTt |¡}|r.|s6t‚n|r6t‚t|dƒsBqTtj|ddd}q
dS©NrpTrr~rf)rrnrÚ    _has_infsrtrorrˆ)rÚarrÚcorrectrÚvalrr r r Útest_has_infs_non_floats
 
 
 
r)rF)r4F)r7F)r:F)r=T)r<T)r?T)r@T)rATr'Zf4Úf2cCsj| |¡}|dk    r| |¡}t|ddƒrft |¡}|r@|sHt‚n|rHt‚t|dƒsTqftj|ddd}qdSr
)    rr'rnrr rtrorrˆ)rr r r'rrrr r r Útest_has_infs_floats9s
 
 
 
 
rÚfixturecCs | |¡}t |jd¡st‚dS©NÚtest©rrÚ _bn_ok_dtyperjrt©rrrÚobjr r r Útest_bn_ok_dtypeZs
rcCs | |¡}t |jd¡rt‚dSrrrr r r Útest_bn_not_ok_dtypebs    
rc@s,eZdZdd„Zdd„Zdd„Zdd„Zd    S)
ÚTestEnsureNumericcCs:t d¡dkst‚t d¡dks$t‚t d¡dks6t‚dS)Nr}皙™™™™ñ?yð?@)rÚ_ensure_numericrtrcr r r Útest_numeric_valuespsz%TestEnsureNumeric.test_numeric_valuesc    Cs°t dddg¡}t t |¡|¡s&t‚| t¡}t t |¡|¡sFt‚tjdddgtd}t t |¡|¡spt‚tjdd    d
gtd}d }tj    t
|d t |¡W5QRXdS) Nr}r"r±Ú1Ú2Ú3©rjròÚbarZbazzCould not convert .* to numericrð) rÚarrayÚallcloserrrtr'rƒrórôr•)r`rÌZo_valuesZs_valuesrör r r Ú test_ndarrayzs
zTestEnsureNumeric.test_ndarraycCsFt t d¡d¡st‚t t d¡d¡s,t‚t t d¡d¡sBt‚dS)Nrçð?z1.1rz1+1jyð?ð?)rr%rrrtrcr r r Útest_convertable_valuessz)TestEnsureNumeric.test_convertable_valuesc    Csxd}tjt|dt d¡W5QRXd}tjt|dt i¡W5QRXtjt|dt g¡W5QRXdS)Nz Could not convert foo to numericrðròz%argument must be a string or a number)rórôr•rr)r`rör r r Útest_non_convertable_values’sz-TestEnsureNumeric.test_non_convertable_valuesN)rùrúrûrr&r(r)r r r r ros
rc@s¢eZdZejdd„ƒZejdd„ƒZdd„Zdd„Zd    d
„Z    d d „Z
d d„Z ej   dedƒ¡ej   dedƒ¡dd„ƒƒZej   dedƒ¡dd„ƒZedd„ƒZdS)ÚTestNanvarFixedValuescCsdS)Ng@r rcr r r Úvariance¢szTestNanvarFixedValues.variancecCs|jj|dddS)Nçà?i †)ZscaleÚsize)ÚprngÚnormal)r`r+r r r Úsamples¦szTestNanvarFixedValues.samplescCst |¡}tj||dddS)Nç{®Gáz„?©Zrtol)rr³rrrs)r`r0r+Úactual_variancer r r Útest_nanvar_all_finiteªs
z,TestNanvarFixedValues.test_nanvar_all_finitecCsjtjt d|jd¡}||ddd…<tj|dd}tj||ddtj|dd}tj|tjdddS)Nr"rT©r|r1r2F)rr3Úonesrerr³rrrs)r`r0r+Ú samples_testr3r r r Útest_nanvar_nans®s z&TestNanvarFixedValues.test_nanvar_nanscCsntjt d|jd¡}||ddd…<tj|dd}tj||dddtj|dd}tj|tjdddS)    Nr"rTr5r,r1r2F)    rr3r6rerr·rrrsr³)r`r0r+r7Z
actual_stdr r r Útest_nanstd_nans¸s z&TestNanvarFixedValues.test_nanstd_nanscCsN|jj|jdd}t ||g¡}tj|dd}tj|t     |dg¡dddS)Nr©r-r}rfçUUUUUUµ?r1r2)
r.Úuniformrerr6rr³rrrsr$)r`r0r+Z samples_unifr3r r r Útest_nanvar_axisÂs ÿz&TestNanvarFixedValues.test_nanvar_axiscCsÂd}|jjd|dfd}tj|dd…df<tj|dddd ¡}tj|dddd ¡}tj|ddd    d ¡}d
}tj||d d tj||d ||d d tj||d |d|d d dS)Néi'r}r:r~Tr)rgr|r°r"r;r1r2r'g@)    r.r<rr3rr³r¥rrrs)r`Únr0Z
variance_0Z
variance_1Z
variance_2r´r r r Útest_nanvar_ddofÌsz&TestNanvarFixedValues.test_nanvar_ddofrgr"r°r±cCst d¡}t dddgdddgdd    d
gg¡|dd …dd …f<tj|d <|dd…d f<t d d dgdddgdddggdddgdddgdddggg¡}tj|d||d}t |dd …|||f¡t |d ¡sÔt    ‚tj
|d||d}t |dd …|||fd ¡t |d ¡st    ‚dS)!N)érAg*ßùf#ï?g›§|9þË?gôֆ«Çá?gävý¼ˆZç?g†§Ûן?g¤Åצʺï?gžã«6bÚ·?gEƒó-œ9ã?g$mx´PÄ?r±gӞõÁ?g/-²:Ŭ?g¥¼?½½?g-u±ållÊ?g(I•0쓵?güÍïM6Æ?g-u±ållÚ?gFºì“Å?gmɉúM6Ö?gý
€Žâ^¸?g)õ܌    Å?g쵇Z&ª?gÍ@#à)GÂ?g/·æTSŽÏ?g6æØî܃³?gÍ@#à)GÒ?g/·æTSŽß?gSW_Ù܃Ã?T)r|rgr°r,) rÚemptyr$r3rr³rrrsÚisnanrtr·)r`rgr°r0r+r´r¸r r r Útest_ground_truthßs2
ýÿýýúÿ z'TestNanvarFixedValues.test_ground_truthcCs.tdt d¡ƒ}|j|d}|dks*t‚dS)NiÂìµ-r)r°rÉ)rrr6r¸rt)r`r°ÚdatarÍr r r Útest_nanstd_roundoffs z*TestNanvarFixedValues.test_nanstd_roundoffcCs tj d¡S©NiÒ©rrZ RandomStatercr r r r.szTestNanvarFixedValues.prngN)rùrúrûrórr+r0r4r8r9r=r@rürýrrDrFÚpropertyr.r r r r r*Ÿs 
 
 
 
 
 &
r*c@sxeZdZejdd„ƒZejdd„ƒZej ddddg¡d    d
„ƒZ    d d „Z
d d„Z dd„Z dd„Z dd„Zedd„ƒZdS)ÚTestNanskewFixedValuescCst t ddd¡¡S©Nrr}éÈ©rÚsinZlinspacercr r r r0szTestNanskewFixedValues.samplescCsdS)NgÌ5ôîÈ¿r rcr r r Ú actual_skewsz"TestNanskewFixedValues.actual_skewrçfffff¨@皙™™™¨@ç¨@cCs(|t d¡}t |¡}|dks$t‚dS©Ni,rÉ)rr6rrÑrt)r`rrErÏr r r Útest_constant_seriess
z+TestNanskewFixedValues.test_constant_seriescCs\d\}}|jj||dd}t |¡dks,t‚d\}}|jj||dd}t |¡dksXt‚dS©N)ç333333Ó?皙™™™™¹?édr:r)rWrV)r.ÚbetarrÑrt©r`ÚalpharYZ left_tailedZ right_tailedr r r Útest_all_finite&s z&TestNanskewFixedValues.test_all_finitecCst |¡}t ||¡dSr1)rrÑrrrs©r`r0rOrÏr r r rD/s
z(TestNanskewFixedValues.test_ground_truthcCsHt |tjt t|ƒ¡g¡}tj|dd}t |t     |tjg¡¡dS©Nr}rf)
rr6r3r6rÚrrÑrrrsr$r]r r r Ú    test_axis3sz TestNanskewFixedValues.test_axiscCs0t |tjg¡}tj|dd}t |¡s,t‚dS©NFr5)rrr3rrÑrCrt)r`r0rÏr r r Ú    test_nans8sz TestNanskewFixedValues.test_nanscCs.t |tjg¡}tj|dd}t ||¡dS©NTr5)rrr3rrÑrrrsr]r r r Útest_nans_skipna=sz'TestNanskewFixedValues.test_nans_skipnacCs tj d¡SrGrHrcr r r r.BszTestNanskewFixedValues.prngN)rùrúrûrórr0rOrürýrTr\rDr_rarcrIr.r r r r rJs
 
 
    rJc@sxeZdZejdd„ƒZejdd„ƒZej ddddg¡d    d
„ƒZ    d d „Z
d d„Z dd„Z dd„Z dd„Zedd„ƒZdS)ÚTestNankurtFixedValuescCst t ddd¡¡SrKrMrcr r r r0JszTestNankurtFixedValues.samplescCsdS)Ng|vÂKó¿r rcr r r Ú actual_kurtNsz"TestNankurtFixedValues.actual_kurtrrPrQrRcCs(|t d¡}t |¡}|dks$t‚dSrS)rr6rrÔrt)r`rrEÚkurtr r r rTRs
z+TestNankurtFixedValues.test_constant_seriescCs\d\}}|jj||dd}t |¡dks,t‚d\}}|jj||dd}t |¡dksXt‚dSrU)r.rYrrÔrtrZr r r r\Ys z&TestNankurtFixedValues.test_all_finitecCst |¡}t ||¡dSr1)rrÔrrrs©r`r0rerfr r r rDbs
z(TestNankurtFixedValues.test_ground_truthcCsHt |tjt t|ƒ¡g¡}tj|dd}t |t     |tjg¡¡dSr^)
rr6r3r6rÚrrÔrrrsr$rgr r r r_fsz TestNankurtFixedValues.test_axiscCs0t |tjg¡}tj|dd}t |¡s,t‚dSr`)rrr3rrÔrCrt)r`r0rfr r r raksz TestNankurtFixedValues.test_nanscCs.t |tjg¡}tj|dd}t ||¡dSrb)rrr3rrÔrrrsrgr r r rcpsz'TestNankurtFixedValues.test_nans_skipnacCs tj d¡SrGrHrcr r r r.uszTestNankurtFixedValues.prngN)rùrúrûrórr0rerürýrTr\rDr_rarcrIr.r r r r rdGs
 
 
    rdc@sJeZdZejddddgddd„ƒZdd    „Zej d
d d g¡d d„ƒZ    dS)ÚTestDatetime64NaNOpsÚsÚmsÚusÚns)ÚparamscCs|jSr1)Úparam)r`rr r r Úunit{szTestDatetime64NaNOps.unitcCsŠtjddd |¡}|d}|t|ƒt|ƒfD]}t |¡}||ks.t‚q.| dtj    ¡}|t|ƒt|ƒfD]}t |¡}||ksjt‚qjdS)Nz
2016-01-01r±)Zperiodsr})
ÚpdZ
date_rangeZas_unitrrrr¤rtÚinsertÚNaT)r`roZdtiÚexpectedrrÍZdti2r r r r¦s
 
z!TestDatetime64NaNOps.test_nanmeanÚ constructorZM8Zm8cCsÖ|›d|›d}t d¡ tj¡ |¡ dd¡}d|d<tj|dd    }t |¡sTt    ‚|j
|ksbt    ‚tj|d
dd }tj dd dg|j
d }t   ||¡tj|ddd }t  |d|d|d|dg¡}t   ||¡dS)Nú[ú]é rAr±rr)r~r~Fr5rr{r>r"r}râ)r}r})r"r})rZaranger'Úint64ÚviewZreshaperr¤Zisnatrtrjr$rrr)r`rtrorjr rÍrsr r r Útest_nanmean_skipna_falses  "z.TestDatetime64NaNOps.test_nanmean_skipna_falseN)
rùrúrûrórror¦rürýrzr r r r rhzs
 
rhc    CsVtjrRt dd¡t d¡s"t‚W5QRXt dd¡t d¡rHt‚W5QRXdS)NZuse_bottleneckTF)rZ_BOTTLENECK_INSTALLEDrpZoption_contextÚ
get_optionrtr r r r Útest_use_bottleneck£s
r|znumpy_op, expectedrg@r}rAcCs$|tddddgƒƒ}||ks t‚dS)Nr}r"r±rA)rrt)Znumpy_oprsrÍr r r Útest_numpy_ops¬sr}Ú    operationcCsDtddtjdtjdgƒ}| ¡}||ƒ}|||d}||ks@t‚dS)Nr}r"r±rA)Úmask)rrr3rrt)r~ÚserrZmedian_expectedZ median_resultr r r Ú%test_nanops_independent_of_mask_paramÁs
 rÚ    min_countr~cCs"t dd|¡}d}||kst‚dS)N)éé%F©rZcheck_below_min_countrt)r‚rÍÚexpected_resultr r r Ú5test_check_below_min_count_negative_or_zero_min_countÞsr‡rFTé    zmin_count, expected_result)r}F)éeTcCs"d}t |||¡}||kst‚dS)N)rrr…)rr‚r†rerÍr r r Ú-test_check_below_min_count_positive_min_countæsrŠ)ll$=OTcCs$d}tj|d|d}||ks t‚dS)N)i?"iå)rr‚r…)r‚r†rerÍr r r Ú&test_check_below_min_count_large_shapeñsr‹r“r¤r cCst t |¡j|¡rt‚dSr1)rrrrjrÊrt)Zany_real_numpy_dtyper“r r r Útest_check_bottleneck_disallowûsrŒrllüÿÿÿlÔ|™H%[<cCsRt|tdƒtjd}| ¡}|j ¡}||ks2t‚||ks>t‚|jtjksNt‚dS)Niô)Úindexrj)    rrrrxr¥rÌrtrjÚfloat64)rrr€rÍZ    np_resultr r r Útest_nanmean_overflows 
  rrjZfloat128rär¥r¸r´rÏrfrÀrËcCsb|dkrt d¡ttdƒ|d}t||ƒƒ}t|ƒrP|dkrP|jtjks^t    ‚n|j|ks^t    ‚dS)Nznp.float128 not availablerr")rÀrË)
róÚskiprrrnrrjrrŽrt)rrjrär€rÍr r r Útest_returned_dtypes 
 r‘)wÚ    functoolsrÚoperatorr©ÚnumpyrróZpandas.util._test_decoratorsÚutilZ_test_decoratorsrZpandas.core.dtypes.commonrZpandasrprrZpandas._testingZ_testingrrZ pandas.corerZpandas.core.arraysrrrbrrrrrr!r#r(r*r.r0r4r7r8r:r<r=r?r@rArCrJrMrNrOrQrRrSrUrVrWrürýÚeqZnaneqÚneZnanneÚgtZnangtÚgeZnangeÚltZnanltÚleZnanler    rrrrrr*rJrdrhr|r¡r r¥r¤r®r­rÀrËrrr}rþrÿr·r³r¼rÄrÇrÑrÔrÖrr‡r$rŠZskip_if_windowsZ skip_if_32bitr‹rŒrÚint16Úint32rxÚfloat32rŽrnr‘r r r r Ú<module>sŒ     
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.
 
 
 
 
 
úþ
$öþ
÷þ ÿ
ýþ
0u33)    öþ
ñþ
    
&ÿ 
 
 
úþ