[Numpy-discussion] "ValueError: total size of new array must be unchanged" only on Windows
Paolo
p.zaffino at yahoo.it
Sun Feb 5 13:41:28 EST 2012
I solved using 'rb' instead of 'r' option in the open file task.
Thank you very much.
Il 05/02/2012 19:13, Warren Weckesser ha scritto:
>
>
> On Sun, Feb 5, 2012 at 12:06 PM, <josef.pktd at gmail.com
> <mailto:josef.pktd at gmail.com>> wrote:
>
>
>
> On Sun, Feb 5, 2012 at 12:52 PM, Paolo <p.zaffino at yahoo.it
> <mailto:p.zaffino at yahoo.it>> wrote:
>
> How I can do this?
>
>
> I'm not sure without trying, numpy.loadtxt might be the easier choice
>
> matrix="".join((i.strip() for i in f.readlines()))
>
> I think strip() also removes newlines besides other whitespace
> otherwise more explicitly
> matrix="".join((i.strip(f.newlines) for i in f.readlines()))
>
> or open the file with mode 'rU' and strip('\n')
>
> Josef
>
>
>
> This code:
>
> matrix="".join(f.readlines())
> matrix=np.fromstring(matrix, dtype=np.int16)
> matrix=matrix.reshape(siz[2],siz[1],siz[0]).T
>
> implies that the data in f is binary, because the 'sep' keyword is not
> used in the call to np.fromstring. If that is the case, you should
> not use f.readlines() to read the data. Instead, read it as a single
> string with f.read(). (Or perhaps read the file with a single call to
> np.fromfile()). Also be sure that the file was opened in binary mode
> (i.e. f = open(filename, 'rb')).
>
> Warren
>
>
>
>
>
>
>
> Il 05/02/2012 18:47, josef.pktd at gmail.com
> <mailto:josef.pktd at gmail.com> ha scritto:
>>
>>
>> On Sun, Feb 5, 2012 at 12:39 PM, Paolo <p.zaffino at yahoo.it
>> <mailto:p.zaffino at yahoo.it>> wrote:
>>
>> This is my code:
>>
>> matrix="".join(f.readlines())
>>
>>
>> my guess would be, that you have to strip the line endings \n
>> versus \r\n
>>
>> Josef
>>
>> matrix=np.fromstring(matrix, dtype=np.int16)
>> matrix=matrix.reshape(siz[2],siz[1],siz[0]).T
>>
>>
>>
>>
>> Il 05/02/2012 17:21, Olivier Delalleau ha scritto:
>>> It means there is some of your code that is not entirely
>>> platform-independent. It's not possible to tell you
>>> which part because you didn't provide your code. The
>>> problem may not even be numpy-related.
>>> So you should first look at the current shape of
>>> 'matrix', and what are the values of a, b and c, then
>>> see where the discrepancy is, and work from there.
>>>
>>> -=- Olivier
>>>
>>> Le 5 février 2012 11:16, Paolo Zaffino
>>> <p.zaffino at yahoo.it <mailto:p.zaffino at yahoo.it>> a écrit :
>>>
>>> Yes, I understand this but I don't know because on
>>> Linux and Mac it works well.
>>> If the matrix size is different it should be
>>> different indipendently from os type.
>>> Am I wrong?
>>> Thanks for your support!
>>>
>>>
>>> ------------------------------------------------------------------------
>>> *From: * Olivier Delalleau <shish at keba.be
>>> <mailto:shish at keba.be>>;
>>> *To: * Discussion of Numerical Python
>>> <numpy-discussion at scipy.org
>>> <mailto:numpy-discussion at scipy.org>>;
>>> *Subject: * Re: [Numpy-discussion] "ValueError:
>>> total size of new array must be unchanged" only on
>>> Windows
>>> *Sent: * Sun, Feb 5, 2012 3:02:44 PM
>>>
>>> It should mean that matrix.size != a * b * c.
>>>
>>> -=- Olivier
>>>
>>> Le 5 février 2012 09:32, Paolo <p.zaffino at yahoo.it>
>>> a écrit :
>>>
>>> Hello,
>>> I wrote a function that works on a numpy matrix
>>> and it works fine on Mac
>>> OS and GNU/Linux (I didn't test it on python 3).
>>> Now I have a problem with numpy: the same python
>>> file doesn't work on
>>> Windows (Windows xp, python 2.7 and numpy 2.6.1).
>>> I get this error:
>>>
>>> matrix=matrix.reshape(a, b, c)
>>> ValueError: total size of new array must be
>>> unchanged
>>>
>>> Why? Do anyone have an idea about this?
>>> Thank you very much.
>>> _______________________________________________
>>> NumPy-Discussion mailing list
>>> NumPy-Discussion at scipy.org
>>> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>>>
>>>
>>>
>>
>>
>> _______________________________________________
>> NumPy-Discussion mailing list
>> NumPy-Discussion at scipy.org
>> <mailto:NumPy-Discussion at scipy.org>
>> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>>
>>
>>
>>
>> _______________________________________________
>> NumPy-Discussion mailing list
>> NumPy-Discussion at scipy.org <mailto:NumPy-Discussion at scipy.org>
>> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
>
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org <mailto:NumPy-Discussion at scipy.org>
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
>
>
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org <mailto:NumPy-Discussion at scipy.org>
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
>
>
>
> _______________________________________________
> 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/20120205/23da6e62/attachment.html>
More information about the NumPy-Discussion
mailing list