* Bug 16365 fixed: median(m,'r'|'c') was wrong after 5dc990
[scilab.git] / scilab / modules / statistics / tests / nonreg_tests / bug_16365.tst
1 // ===================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2020 - Samuel GOUGEON
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // ===================================================================
7
8 // <-- CLI SHELL MODE -->
9 // <-- NO CHECK REF -->
10 // <-- Non-regression test for bug 16365 -->
11 //
12 // <-- Bugzilla URL -->
13 // http://bugzilla.scilab.org/16365
14 //
15 // <-- Short Description -->
16 // median(m,"r") and median(m,"c") were wrong
17 // ===================================================================
18
19 m = [
20    2.   8.   9.   6.   9.   4.
21    2.   3.   4.   6.   8.   6.
22    4.   5.   7.   6.   6.   5.
23    5.   5.   6.   3.   5.   0.
24    4.   0.   9.   0.   3.   7.
25    1.   6.   9.   1.   3.   6.
26    9.   9.   3.   2.   7.   5.
27    5.   0.   9.   9.   8.   4.
28    ];
29
30 //--> gsort(m,"r","i")
31 // ans  =
32 //   1.   0.   3.   0.   3.   0.
33 //   2.   0.   4.   1.   3.   4.
34 //   2.   3.   6.   2.   5.   4.
35 //   4.   5.   7.   3.   6.   5.
36 //   4.   5.   9.   6.   7.   5.
37 //   5.   6.   9.   6.   8.   6.
38 //   5.   8.   9.   6.   8.   6.
39 //   9.   9.   9.   9.   9.   7.
40 ref=[4    5    8    4.5  6.5  5 ];
41 assert_checkequal(median(m,"r"), ref);
42
43 //--> gsort(m,"c","i")
44 // ans  =
45 //   2.   4.   6.   8.   9.   9.
46 //   2.   3.   4.   6.   6.   8.
47 //   4.   5.   5.   6.   6.   7.
48 //   0.   3.   5.   5.   5.   6.
49 //   0.   0.   3.   4.   7.   9.
50 //   1.   1.   3.   6.   6.   9.
51 //   2.   3.   5.   7.   9.   9.
52 //   0.   4.   5.   8.   9.   9.
53 ref = [7 5 5.5 5 3.5 4.5 6 6.5]';
54 assert_checkequal(median(m,"c"), ref);