On Tue, Feb 23, 2016 at 11:32 AM, Benjamin Root <ben.v.r...@gmail.com> wrote:
> Not exactly sure if this should be a bug or not. This came up in a fairly > general function of mine to process satellite data. Unexpectedly, one of > the satellite files had no scans in it, triggering an exception when I > tried to reshape the data from it. > > >>> import numpy as np > >>> a = np.zeros((0, 5*64)) > >>> a.shape > (0, 320) > >>> a.shape = (0, 5, 64) > >>> a.shape > (0, 5, 64) > >>> a.shape = (0, 5*64) > >>> a.shape = (0, 5, -1) > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > ValueError: total size of new array must be unchanged > > So, if I know all of the dimensions, I can reshape just fine. But if I > wanted to use the nifty -1 semantic, it completely falls apart. I can see > arguments going either way for whether this is a bug or not. > When you try `a.shape = (0, 5, -1)`, the size of the third dimension is ambiguous. From the Zen of Python: "In the face of ambiguity, refuse the temptation to guess." Warren > Thoughts? > > Ben Root > > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@scipy.org > https://mail.scipy.org/mailman/listinfo/numpy-discussion > >
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org https://mail.scipy.org/mailman/listinfo/numpy-discussion