On Wed, Aug 4, 2010 at 8:00 PM, Gökhan Sever <gokhansever@gmail.com> wrote:
On Wed, Aug 4, 2010 at 6:59 PM, <PHobson@geosyntec.com> wrote:
Hey folks,
I've one array, x, that you could define as follows: [[1, 2.25], [2, 2.50], [3, 2.25], [4, 0.00], [8, 0.00], [9, 2.75]]
Then my second array, y, is: [[1, 0.00], [2, 0.00], [3, 0.00], [4, 0.00], [5, 0.00], [6, 0.00], [7, 0.00], [8, 0.00], [9, 0.00], [10,0.00]]
Is there a concise, Numpythonic way to copy the values of x[:,1] over to y[:,1] where x[:,0] = y[:,0]? Resulting in, z: [[1, 2.25], [2, 2.50], [3, 2.25], [4, 0.00], [5, 0.00], [6, 0.00], [7, 0.00], [8, 0.00], [9, 2.75], [10,0.00]]
My current task has len(x) = 25000 and len(y) = 350000 and looping through is quite slow unfortunately.
Many thanks, -paul
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion
My simplest approach would be:
y[x[:0]-1] = x
# Providing the arrays are nicely ordered and 1st column x is all integer.
-- Gökhan
With the forgotten comma ;) y[x[:,0]-1] = x -- Gökhan