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

Method test_concatenate

numpy/core/tests/test_shape_base.py:308–348  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

306 assert_array_equal(x, r)
307
308 def test_concatenate(self):
309 # Test concatenate function
310 # One sequence returns unmodified (but as array)
311 r4 = list(range(4))
312 assert_array_equal(concatenate((r4,)), r4)
313 # Any sequence
314 assert_array_equal(concatenate((tuple(r4),)), r4)
315 assert_array_equal(concatenate((array(r4),)), r4)
316 # 1D default concatenation
317 r3 = list(range(3))
318 assert_array_equal(concatenate((r4, r3)), r4 + r3)
319 # Mixed sequence types
320 assert_array_equal(concatenate((tuple(r4), r3)), r4 + r3)
321 assert_array_equal(concatenate((array(r4), r3)), r4 + r3)
322 # Explicit axis specification
323 assert_array_equal(concatenate((r4, r3), 0), r4 + r3)
324 # Including negative
325 assert_array_equal(concatenate((r4, r3), -1), r4 + r3)
326 # 2D
327 a23 = array([[10, 11, 12], [13, 14, 15]])
328 a13 = array([[0, 1, 2]])
329 res = array([[10, 11, 12], [13, 14, 15], [0, 1, 2]])
330 assert_array_equal(concatenate((a23, a13)), res)
331 assert_array_equal(concatenate((a23, a13), 0), res)
332 assert_array_equal(concatenate((a23.T, a13.T), 1), res.T)
333 assert_array_equal(concatenate((a23.T, a13.T), -1), res.T)
334 # Arrays much match shape
335 assert_raises(ValueError, concatenate, (a23.T, a13.T), 0)
336 # 3D
337 res = arange(2 * 3 * 7).reshape((2, 3, 7))
338 a0 = res[..., :4]
339 a1 = res[..., 4:6]
340 a2 = res[..., 6:]
341 assert_array_equal(concatenate((a0, a1, a2), 2), res)
342 assert_array_equal(concatenate((a0, a1, a2), -1), res)
343 assert_array_equal(concatenate((a0.T, a1.T, a2.T), 0), res.T)
344
345 out = res.copy()
346 rout = concatenate((a0, a1, a2), 2, out=out)
347 assert_(out is rout)
348 assert_equal(res, rout)
349
350 @pytest.mark.skipif(IS_PYPY, reason="PYPY handles sq_concat, nb_add differently than cpython")
351 def test_operator_concat(self):

Callers

nothing calls this directly

Calls 9

assert_array_equalFunction · 0.90
concatenateFunction · 0.90
arrayFunction · 0.90
assert_raisesFunction · 0.90
assert_Function · 0.90
assert_equalFunction · 0.90
arangeFunction · 0.85
reshapeMethod · 0.80
copyMethod · 0.45

Tested by

no test coverage detected