since trunk behaves properly, where do you want unit test? in version 0.7?

On Mon, Jan 14, 2013 at 3:59 PM, Jake Mannix <[email protected]> wrote:

> I could have sworn we've seen and fixed this bug before, but I guess not.
>  Let's get a (failing) unit test in there, and then it should be an easy
> fix.
>
> I think nobody runs into this because it's really rare to want to iterate
> over all of the entries in a sparse vector - iterateNonZero() is used
> almost exclusively for these.
>
>
> On Mon, Jan 14, 2013 at 12:51 PM, Koert Kuipers <[email protected]> wrote:
>
> > not the same behavior in trunk. SequentialAccessVector.iterator seems to
> > behave properly there.
> >
> > On Mon, Jan 14, 2013 at 3:07 PM, Koert Kuipers <[email protected]>
> wrote:
> >
> > > sorry yes i meant 0.7
> > >
> > > On Mon, Jan 14, 2013 at 12:58 PM, Jake Mannix <[email protected]
> > >wrote:
> > >
> > >> I think you mean 0.7, right?  Can you see if you get the same behavior
> > in
> > >> svn trunk?
> > >>
> > >>
> > >> On Mon, Jan 14, 2013 at 9:21 AM, Koert Kuipers <[email protected]>
> > wrote:
> > >>
> > >> > i am using version mahout 7.0
> > >> >
> > >> > On Mon, Jan 14, 2013 at 10:15 AM, Ted Dunning <
> [email protected]>
> > >> > wrote:
> > >> >
> > >> > > Which version are you using?
> > >> > >
> > >> > > (this misbehavior sounds familiar)
> > >> > >
> > >> > > iterator() should return all values.
> > >> > >
> > >> > > iterateNonZero() is allowed to skip zeros.
> > >> > >
> > >> > > On Mon, Jan 14, 2013 at 6:11 AM, Koert Kuipers <[email protected]
> >
> > >> > wrote:
> > >> > >
> > >> > > > i am looking at the iterators for DenseVector,
> > >> > RandomAcccessSparseVector
> > >> > > > and SequentialAccessSparseVector.
> > >> > > >
> > >> > > > for both DenseVector and RandomAcccessSparseVector the iterator
> > >> seems
> > >> > to
> > >> > > > return all values, including the missing zero values.
> > >> > > > for SequentialAccessSparseVector the iterator also returns all
> > >> values,
> > >> > > but
> > >> > > > only up to the last non-missing value!
> > >> > > >
> > >> > > > is this by design? what is a vector iterator supposed to return
> > >> > exactly?
> > >> > > i
> > >> > > > can't see a logical pattern/consistency. see examples below.
> > >> > > > thanks! koert
> > >> > > >
> > >> > > > scala> val x = new
> > >> org.apache.mahout.math.RandomAccessSparseVector(5)
> > >> > > > x: org.apache.mahout.math.RandomAccessSparseVector = {}
> > >> > > >
> > >> > > > scala> x.set(3, 1.0)
> > >> > > >
> > >> > > > scala> for (item <- x.iterator.asScala) println((item.index,
> > >> item.get))
> > >> > > > (0,0.0)
> > >> > > > (1,0.0)
> > >> > > > (2,0.0)
> > >> > > > (3,1.0)
> > >> > > > (4,0.0)
> > >> > > >
> > >> > > > scala> val y = new
> > >> > org.apache.mahout.math.SequentialAccessSparseVector(5)
> > >> > > > y: org.apache.mahout.math.SequentialAccessSparseVector = {
> > >> > > >
> > >> > > > scala> y.set(3, 1.0)
> > >> > > >
> > >> > > > scala> for (item <- y.iterator.asScala) println((item.index,
> > >> item.get))
> > >> > > > (0,0.0)
> > >> > > > (1,0.0)
> > >> > > > (2,0.0)
> > >> > > > (3,1.0)
> > >> > > >
> > >> > >
> > >> >
> > >>
> > >>
> > >>
> > >> --
> > >>
> > >>   -jake
> > >>
> > >
> > >
> >
>
>
>
> --
>
>   -jake
>

Reply via email to