Hi. What I want to do is to replace all zero in the matrix with infinity.
This is my solution and it works as expected: amendEachZero=: dyad define NB. Get the passed parameters newval=. x source=. Y NB. Loop through each row for_xyz. source do. NB. Replace each 0 with a new value source=. (newval (I. 0 = xyz)} xyz) xyz_index } source end. NB. Return the result source ) As you can see, this works: [temp=. 2 5 ? 10 5 7 0 0 0 3 6 0 5 4 _ amendEachZero temp 5 7 _ _ _ 3 6 _ 5 4 But what I really wanted to do was make a tacit definition which would not require the explicit for_xyz. Loop. So how do I apply the (I. 0 =) to each row of a 2 dimension matrix, then use that as an the index to an amend operation? Am I approaching this problem wrong? This is actually an extension of the verb conjunction discussion I started earlier which actually means ... I still haven't understood how to use them. :P Thanks for any help. r/alex ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
