[Numpy-discussion] view of recarray issue

Jay Bourque jay.bourque at continuum.io
Wed Jul 25 13:29:50 EDT 2012


I'm actively looking at this issue since it was my pull request that broke
this (https://github.com/numpy/numpy/pull/350). We definitely don't want to
break this functionality for 1.7. The problem is that even though indexing
with a subset of fields still returns a copy (for now), it now returns a
copy of a view of the original array. When you call copy() on a view, it
copies the entire original structured array with the view dtype. A short
term fix would be to "manually" create a proper copy to return similar to
what _index_fields() did before my change, but since the idea is to
eventually return the view instead of a copy, long term we need a way to do
a proper copy of a structured array view that doesn't copy the unwanted
fields.

-Jay

On Wed, Jul 25, 2012 at 10:15 AM, Skipper Seabold <jsseabold at gmail.com>wrote:

> On Sun, Jul 22, 2012 at 2:15 PM, Ralf Gommers
> <ralf.gommers at googlemail.com> wrote:
> > Hi,
> >
> > Just a heads up that right now views of recarrays seem to be problematic,
> > this doesn't work anymore:
> >
> >>>> import statsmodels.api as sm
> >>>> dta = sm.datasets.macrodata.load()  # returns a record array with 14
> >>>> fields
> >>>> dta.data[['infl', 'realgdp']].view((float,2))
> >
> > I opened http://projects.scipy.org/numpy/ticket/2187 for this. Probably
> a
> > blocker for 1.7.0.
> >
> > Question: is that really the recommended way to get an (N, 2) size float
> > array from two columns of a larger record array? If so, why isn't there a
> > better way? If you'd want to write to that (N, 2) array you have to
> append a
> > copy, making it even uglier. Also, then there really should be tests for
> > views in test_records.py.
> >
>
> Any comments on this? I have a lot of broken code to deal with if
> ((float, shape[1])) is no longer allowed on structured and rec arrays.
>
> Skipper
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20120725/c0752226/attachment.html>


More information about the NumPy-Discussion mailing list