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

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@scipy.org
http://mail.scipy.org/mailman/listinfo/numpy-discussion