| 185 | assert_equal(wts, [1., 0.]) |
| 186 | |
| 187 | def test_testAverage2(self): |
| 188 | # More tests of average. |
| 189 | w1 = [0, 1, 1, 1, 1, 0] |
| 190 | w2 = [[0, 1, 1, 1, 1, 0], [1, 0, 0, 0, 0, 1]] |
| 191 | x = arange(6, dtype=np.float_) |
| 192 | assert_equal(average(x, axis=0), 2.5) |
| 193 | assert_equal(average(x, axis=0, weights=w1), 2.5) |
| 194 | y = array([arange(6, dtype=np.float_), 2.0 * arange(6)]) |
| 195 | assert_equal(average(y, None), np.add.reduce(np.arange(6)) * 3. / 12.) |
| 196 | assert_equal(average(y, axis=0), np.arange(6) * 3. / 2.) |
| 197 | assert_equal(average(y, axis=1), |
| 198 | [average(x, axis=0), average(x, axis=0) * 2.0]) |
| 199 | assert_equal(average(y, None, weights=w2), 20. / 6.) |
| 200 | assert_equal(average(y, axis=0, weights=w2), |
| 201 | [0., 1., 2., 3., 4., 10.]) |
| 202 | assert_equal(average(y, axis=1), |
| 203 | [average(x, axis=0), average(x, axis=0) * 2.0]) |
| 204 | m1 = zeros(6) |
| 205 | m2 = [0, 0, 1, 1, 0, 0] |
| 206 | m3 = [[0, 0, 1, 1, 0, 0], [0, 1, 1, 1, 1, 0]] |
| 207 | m4 = ones(6) |
| 208 | m5 = [0, 1, 1, 1, 1, 1] |
| 209 | assert_equal(average(masked_array(x, m1), axis=0), 2.5) |
| 210 | assert_equal(average(masked_array(x, m2), axis=0), 2.5) |
| 211 | assert_equal(average(masked_array(x, m4), axis=0).mask, [True]) |
| 212 | assert_equal(average(masked_array(x, m5), axis=0), 0.0) |
| 213 | assert_equal(count(average(masked_array(x, m4), axis=0)), 0) |
| 214 | z = masked_array(y, m3) |
| 215 | assert_equal(average(z, None), 20. / 6.) |
| 216 | assert_equal(average(z, axis=0), [0., 1., 99., 99., 4.0, 7.5]) |
| 217 | assert_equal(average(z, axis=1), [2.5, 5.0]) |
| 218 | assert_equal(average(z, axis=0, weights=w2), |
| 219 | [0., 1., 99., 99., 4.0, 10.0]) |
| 220 | |
| 221 | def test_testAverage3(self): |
| 222 | # Yet more tests of average! |