[SciPy-User] problems with numpy array assignment
Eric Hermes
ehermes at chem.wisc.edu
Tue Mar 4 15:18:18 EST 2014
On 3/4/2014 2:13 PM, Gabriele Brambilla wrote:
> But the changes I make on PAS=MYMAP[:, hhh. :] will be applied to
> G=MYMAP[:, :, :]?
>
> Gabriele
>
If PAS is assigned as:
PAS = MYMAP[:,hhh,:]
and G is assigned as:
G = MYMAP[:,:,:]
then modification of one variable will affect the other, since PAS and G
are references to slices of the array MYMAP (which will also be modified).
Eric
>
> 2014-03-04 15:07 GMT-05:00 Gabriele Brambilla
> <gb.gabrielebrambilla at gmail.com <mailto:gb.gabrielebrambilla at gmail.com>>:
>
> thanks.
>
> Gabriele
>
>
> 2014-03-04 15:04 GMT-05:00 Eric Hermes <ehermes at chem.wisc.edu
> <mailto:ehermes at chem.wisc.edu>>:
>
> On 3/4/2014 2:00 PM, Gabriele Brambilla wrote:
>> Hi,
>>
>> Something strange happens in my code: I have added the lines
>> after #...
>>
>> MYMAP is a 3d numpy array
>> PAS = MYMAP[:, hhh, :]
>>
>> #multiplying per energy bin width
>> PAS1 = PAS
>> for l in nIph:
>> PAS1[l,:] = PAS1[l,:]*zz
>>
>> But this affect the result I get when I elaborate the data from:
>>
>> EXCT = MYMAP[:, hhh, :]
>>
>> is python continuing to modify the original matrix??
>>
>> Thanks
>>
>> Gabriele
>>
>>
>> _______________________________________________
>> SciPy-User mailing list
>> SciPy-User at scipy.org <mailto:SciPy-User at scipy.org>
>> http://mail.scipy.org/mailman/listinfo/scipy-user
> Gabriele,
>
> Numpy arrays are passed as references, so in your code when
> you modify PAS1 (which inherits the reference to MYMAP from
> PAS), the changes propogates upwards into MYMAP. If you want
> to avoid this, you can explicitly create a copy of the array,
> either by doing:
>
> PAS = MYMAP[:,hhh,:].copy()
>
> or:
>
> PAS1 = PAS.copy()
>
> Eric
>
> --
> Eric Hermes
> J.R. Schmidt Group
> Chemistry Department
> University of Wisconsin - Madison
>
>
> _______________________________________________
> SciPy-User mailing list
> SciPy-User at scipy.org <mailto:SciPy-User at scipy.org>
> http://mail.scipy.org/mailman/listinfo/scipy-user
>
>
>
>
>
> _______________________________________________
> SciPy-User mailing list
> SciPy-User at scipy.org
> http://mail.scipy.org/mailman/listinfo/scipy-user
--
Eric Hermes
J.R. Schmidt Group
Chemistry Department
University of Wisconsin - Madison
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.scipy.org/pipermail/scipy-user/attachments/20140304/8de9fa3b/attachment.html>
More information about the SciPy-User
mailing list