Re: put some elements to zero
- To: mathgroup at smc.vnet.net
- Subject: [mg101481] Re: put some elements to zero
- From: pfalloon <pfalloon at gmail.com>
- Date: Wed, 8 Jul 2009 07:12:10 -0400 (EDT)
- References: <h2vcj8$qq7$1@smc.vnet.net>
On Jul 7, 9:46 pm, Luigi B <L.Balz... at gmail.com> wrote: > Dear All, > I have a matrix with only two columns and many rows. For instance > {xi,yi}. > For those xi<x0, I would like to set yi=0. > I can only think of a very inefficient loop... > > thanks > -Luigi- One solution is the following: x0=0; pairs = RandomReal[{-1,1}, {10000,2}]; pairs = Transpose[pairs]; pairs = Transpose[{pairs[[1]], UnitStep[pairs[[1]]-x0]*pairs [[2]]}]; The key is to operate on the entire list rather than individual rows. Cheers, Peter.