I think you want np.maximum(a, b, out=a) - Nathaniel On Dec 6, 2011 9:04 PM, "questions anon" <questions.anon@gmail.com> wrote:
thanks for responding Josef but that is not really what I am looking for, I have a multidimensional array and if the next array has any values greater than what is in my first array I want to replace them. The data are contained in netcdf files. I can achieve what I want if I combine all of my arrays using numpy concatenate and then using the command numpy.max(myarray, axis=0) but because I have so many arrays I end up with a memory error so I need to find a way to get the maximum while looping.
On Wed, Dec 7, 2011 at 12:36 PM, <josef.pktd@gmail.com> wrote:
On Tue, Dec 6, 2011 at 7:55 PM, Olivier Delalleau <shish@keba.be> wrote:
It may not be the most efficient way to do this, but you can do: mask = b > a a[mask] = b[mask]
-=- Olivier
2011/12/6 questions anon <questions.anon@gmail.com>
I would like to produce an array with the maximum values out of many (10000s) of arrays. I need to loop through many multidimentional arrays and if a value is larger (in the same place as the previous array) then I would like that value to replace it.
e.g. a=[1,1,2,2 11,2,2 1,1,2,2] b=[1,1,3,2 2,1,0,0 1,1,2,0]
where b>a replace with value in b, so the new a should be :
a=[1,1,3,2] 2,1,2,2 1,1,2,2]
and then keep looping through many arrays and replace whenever value is larger.
I have tried numpy.putmask but that results in TypeError: putmask() argument 1 must be numpy.ndarray, not list Any other ideas? Thanks
if I understand correctly it's a minimum.reduce
numpy
a = np.concatenate((np.arange(5)[::-1], np.arange(5)))*np.ones((4,3,1)) np.minimum.reduce(a, axis=2) array([[ 0., 0., 0.], [ 0., 0., 0.], [ 0., 0., 0.], [ 0., 0., 0.]]) a.T.shape (10, 3, 4)
python with iterable
reduce(np.maximum, a.T) array([[ 4., 4., 4., 4.], [ 4., 4., 4., 4.], [ 4., 4., 4., 4.]]) reduce(np.minimum, a.T) array([[ 0., 0., 0., 0.], [ 0., 0., 0., 0.], [ 0., 0., 0., 0.]])
Josef
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion