L iB2ddlZddlZddlmZmZddlmZejjdddgdZ dZ d Z ejjdddgd Z ejjdddgd Zd Zd ZdZdZdZy)N)assert_array_equal assert_equal)crosstabsparseFTcgd}gd}ddg}gd}tjgdgdg}t|||\\}}}t||t|||rt|j |yt||y) Nrr r rrr )r r r r rr r r r )r r r )r rr rnparrayrrtoarray rabexpected_avalsexpected_bvalsexpected_countavalsbvalscounts e/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/scipy/stats/tests/test_crosstab.pytest_crosstab_basicrszAAVNNXXy(*+N$Q&9NUEEun-un- 5==?N;5.1cgd}gd}tjgd}t|\\}}t||t||y)Nr r r r r r r r )r r r rrrr)xexpected_xvalsrxvalsrs rtest_crosstab_basic_1dr%s=ANXXi(NqkOHUeun-un-rcd}d}gd}||||||||g}gd}ddg}||g}gd}tjgdgd ggd gd gg}t|||\\} } } } t| |t| |t| |t| |y) Nrr)rrr r rrr r )r r r r r r r r rr r )r r rrr r )r rr )rrr r!) rrr"yzr#expected_yvalsexpected_zvalsrr$yvalszvalsrs rtest_crosstab_basic_3dr."s A A A Aq!Q1a A AVNVNNXX ) + ) ) +,-N$,Aq!#4 UE55un-un-un-un-rcgd}gd}ddg}gd}tjgdgdg}t||dgdg|\\}}}t||t|||rt|j |yt||y) Nrr rr rr r r rr r r rr rr levelsrrrs rtest_crosstab_levelsr57sAAVN!NXX|+-.N$Q42F,24NUEEun-un- 5==?N;5.1rcgd}gd}ddg}gd}tjgdgdg}t||ddggdg|\\}}}t||t|||rt|j |yt||y) N)rrr r rrr )r r r r r r r r rr r0r1r2r3rrs rtest_crosstab_extra_levelsr8Is "A AVN!NXX|+-.N$QAq6<2H,24NUEEun-un- 5==?N;5.1rcxtjtd5tdddy#1swYyxYw)Nz At least onematch)pytestraises TypeErrorrrrtest_validation_at_least_oner@]s* y 7 s 09ctjtd5tddggddddy#1swYyxYw)Nzmust have the same lengthr:r r )r r r r<r= ValueErrorrr?rrtest_validation_same_lengthsrEbs4 z)D E'!Q&'''s6?ctjtd5tgdgdgdddddy#1swYyxYw)Nzonly two input sequencesr:r'rHr )r r r TrrCr?rr$test_validation_sparse_only_two_argsrIgs4 z)C D?Iy>??? ;Actjtd5tgdgdgdfdddy#1swYyxYw)Nznumber of input sequencesr:r'rGr0)r4rCr?rr'test_validation_len_levels_matches_argsrLls4 z)D E?I|o>???rJchtddgddg}t|j|jf|y)Nrr r )rrelementsr)ress r test_resultrPqs- Aq6Aq6 "C#,, *C0r)r<numpyr numpy.testingrrscipy.stats.contingencyrmark parametrizerr%r.r5r8r@rErIrLrPr?rrrVs :,E4=1 22 2 ..*E4=1222"E4=1222& ' ? ? 1r