[Numpy-discussion] Howto create a record array from arrays without copying their data
Wed Aug 12 11:00:01 CDT 2009
On Wed, Aug 12, 2009 at 11:28 AM, Ryan May<firstname.lastname@example.org> wrote:
> On Wed, Aug 12, 2009 at 10:22 AM, Ralph Heinkel <email@example.com> wrote:
>> I'm creating (actually calculating) a set of very large 1-d arrays
>> (vectors), which I would like to assemble into a record array so I can
>> access the data row-wise. Unfortunately it seems that all data of my
>> original 1-d arrays are getting copied in memory during that process.
>> Is there a way to get around that?
> I don't think so, because fundamentally numpy assumes array elements are
> packed together in memory. If you know C, record arrays are pretty much
> arrays of structures. You could try just using a python dictionary to hold
> the arrays, depending on you motives behind using a record array.
Can you preallocate the record array and fill it up as you calculate
the values? You can use the reference to the recarray columns.
I never tried with recarrays.
More information about the NumPy-Discussion