[Numpy-discussion] How to concatenate two arrayswithout duplicating memory?
Wed Sep 2 04:58:15 CDT 2009
depending on the needs you have you might be interested in my "minimal
implementation" of what I call a
I needed somthing like this to analyze higher dimensional stacks of 2d
images and what I needed was mostly the indexing features of
A mockarray is initialized with a list of nd-arrays. The result is a
mock array having one additional dimention "in front".
>>> a = N.arange(9)
>>> b = N.arange(9)
>>> c = F.mockNDarray(a,b)
(2, 3, 3)
No memory copy is done.
I put the module file here
Otherwise this is part of my (BSD) "Priithon" image analysis framework.
On Wed, Sep 2, 2009 at 11:31 AM, "V. Armando Solé"<email@example.com> wrote:
> Citi, Luca wrote:
>> As Gaël pointed out you cannot create A, B and then C
>> as the concatenation of A and B without duplicating
>> the vectors.
>> But you can still re-link A to the left elements
>> and B to the right ones afterwards by using views into C.
> Thanks for the hint. In my case the A array is already present and the
> contents of the B array can be read from disk.
> At least I have two workarounds making use of your suggested solution of
> - create the C array, copy the contents of A to it and read the contents
> of B directly into C with duplication of the memory of A during some time.
> - save the array A in disk, create the array C, read the contents of A
> and B into it and re-link A and B with no duplication but ugly.
> NumPy-Discussion mailing list
More information about the NumPy-Discussion