MCPcopy Index your code
hub / github.com/numpy/numpy / test_special

Method test_special

numpy/ma/tests/test_extras.py:1243–1284  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

1241 assert_array_equal(np.ma.median(a), 255)
1242
1243 def test_special(self):
1244 for inf in [np.inf, -np.inf]:
1245 a = np.array([[inf, np.nan], [np.nan, np.nan]])
1246 a = np.ma.masked_array(a, mask=np.isnan(a))
1247 assert_equal(np.ma.median(a, axis=0), [inf, np.nan])
1248 assert_equal(np.ma.median(a, axis=1), [inf, np.nan])
1249 assert_equal(np.ma.median(a), inf)
1250
1251 a = np.array([[np.nan, np.nan, inf], [np.nan, np.nan, inf]])
1252 a = np.ma.masked_array(a, mask=np.isnan(a))
1253 assert_array_equal(np.ma.median(a, axis=1), inf)
1254 assert_array_equal(np.ma.median(a, axis=1).mask, False)
1255 assert_array_equal(np.ma.median(a, axis=0), a[0])
1256 assert_array_equal(np.ma.median(a), inf)
1257
1258 # no mask
1259 a = np.array([[inf, inf], [inf, inf]])
1260 assert_equal(np.ma.median(a), inf)
1261 assert_equal(np.ma.median(a, axis=0), inf)
1262 assert_equal(np.ma.median(a, axis=1), inf)
1263
1264 a = np.array([[inf, 7, -inf, -9],
1265 [-10, np.nan, np.nan, 5],
1266 [4, np.nan, np.nan, inf]],
1267 dtype=np.float32)
1268 a = np.ma.masked_array(a, mask=np.isnan(a))
1269 if inf > 0:
1270 assert_equal(np.ma.median(a, axis=0), [4., 7., -inf, 5.])
1271 assert_equal(np.ma.median(a), 4.5)
1272 else:
1273 assert_equal(np.ma.median(a, axis=0), [-10., 7., -inf, -9.])
1274 assert_equal(np.ma.median(a), -2.5)
1275 assert_equal(np.ma.median(a, axis=1), [-1., -2.5, inf])
1276
1277 for i in range(10):
1278 for j in range(1, 10):
1279 a = np.array([([np.nan] * i) + ([inf] * j)] * 2)
1280 a = np.ma.masked_array(a, mask=np.isnan(a))
1281 assert_equal(np.ma.median(a), inf)
1282 assert_equal(np.ma.median(a, axis=1), inf)
1283 assert_equal(np.ma.median(a, axis=0),
1284 ([np.nan] * i) + [inf] * j)
1285
1286 def test_empty(self):
1287 # empty arrays

Callers

nothing calls this directly

Calls 2

assert_equalFunction · 0.90
assert_array_equalFunction · 0.90

Tested by

no test coverage detected