[Numpy-discussion] How to concatenate two arrays without duplicating memory?

Gael Varoquaux gael.varoquaux at normalesup.org
Wed Sep 2 04:24:35 EDT 2009


On Wed, Sep 02, 2009 at 09:40:49AM +0200, "V. Armando Solé" wrote:
> Let's say we have two arrays A and B of shapes (10000, 2000) and (10000, 
> 4000).

> If I do C=numpy.concatenate((A, B), axis=1), I get a new array of 
> dimension (10000, 6000) with duplication of memory.

> I am looking for a way to have a non contiguous array C in which the 
> "left" (10000, 2000) elements point to A and the "right" (10000, 4000) 
> elements point to B. 

You cannot in the numpy memory model. The numpy memory model defines an
array as something that has regular strides to jump from an element to
the next one.

Gaël



More information about the NumPy-Discussion mailing list