MCPcopy Create free account
hub / github.com/numpy/numpy / test_special

Method test_special

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

Source from the content-addressed store, hash-verified

1153 assert_array_equal(np.ma.median(a), 255)
1154
1155 def test_special(self):
1156 for inf in [np.inf, -np.inf]:
1157 a = np.array([[inf, np.nan], [np.nan, np.nan]])
1158 a = np.ma.masked_array(a, mask=np.isnan(a))
1159 assert_equal(np.ma.median(a, axis=0), [inf, np.nan])
1160 assert_equal(np.ma.median(a, axis=1), [inf, np.nan])
1161 assert_equal(np.ma.median(a), inf)
1162
1163 a = np.array([[np.nan, np.nan, inf], [np.nan, np.nan, inf]])
1164 a = np.ma.masked_array(a, mask=np.isnan(a))
1165 assert_array_equal(np.ma.median(a, axis=1), inf)
1166 assert_array_equal(np.ma.median(a, axis=1).mask, False)
1167 assert_array_equal(np.ma.median(a, axis=0), a[0])
1168 assert_array_equal(np.ma.median(a), inf)
1169
1170 # no mask
1171 a = np.array([[inf, inf], [inf, inf]])
1172 assert_equal(np.ma.median(a), inf)
1173 assert_equal(np.ma.median(a, axis=0), inf)
1174 assert_equal(np.ma.median(a, axis=1), inf)
1175
1176 a = np.array([[inf, 7, -inf, -9],
1177 [-10, np.nan, np.nan, 5],
1178 [4, np.nan, np.nan, inf]],
1179 dtype=np.float32)
1180 a = np.ma.masked_array(a, mask=np.isnan(a))
1181 if inf > 0:
1182 assert_equal(np.ma.median(a, axis=0), [4., 7., -inf, 5.])
1183 assert_equal(np.ma.median(a), 4.5)
1184 else:
1185 assert_equal(np.ma.median(a, axis=0), [-10., 7., -inf, -9.])
1186 assert_equal(np.ma.median(a), -2.5)
1187 assert_equal(np.ma.median(a, axis=1), [-1., -2.5, inf])
1188
1189 for i in range(0, 10):
1190 for j in range(1, 10):
1191 a = np.array([([np.nan] * i) + ([inf] * j)] * 2)
1192 a = np.ma.masked_array(a, mask=np.isnan(a))
1193 assert_equal(np.ma.median(a), inf)
1194 assert_equal(np.ma.median(a, axis=1), inf)
1195 assert_equal(np.ma.median(a, axis=0),
1196 ([np.nan] * i) + [inf] * j)
1197
1198 def test_empty(self):
1199 # empty arrays

Callers

nothing calls this directly

Calls 2

assert_equalFunction · 0.90
assert_array_equalFunction · 0.90

Tested by

no test coverage detected