Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
NCTM or The Math Forum.



Re: Sparse Array Question
Posted:
Apr 24, 2013 7:02 AM


One idea:
#[[1, 1]] > Total[#[[All, 2]]] & /@ Split[Sort[myList], #[[1]] == #2[[1]] &]
In versions 7 and later you can do:
#[[1, 1]] > Total[#[[All, 2]]] & /@ GatherBy[myList, #[[1]] &]
On Apr 23, 2013, at 12:04 AM, christopher arthur <chris.arthur1@gmail.com> wrote:
> Hello, > > I have a list of rules for defining a SparseArray. The list has some > coordinates repeated with different values. If a coordinate appears in > the list more than once, I want to sum up the values, and then have a > SparseArray > > i.e., if my list were myList={{1,1}>1,{2,1}>2,{1,1}>3} then my > SparseArray should have {1,1}>4. I've tried using ReplacePart on an > array to say myArray=ReplacePart[myArray,...] but this seems horribly > inefficient as a way to change values in an array. > > I'm using Mathematica 5.2 > > Cheers, > > Chris >



