Christopher Barker wrote: > Bill Baxter wrote: >>> In [35]: x = [ 0, 0, 0, 99, 0, 1, 5] >>> In [37]: i=nonzero(x) >>> In [38]: i >>> Out[38]: (array([3, 5, 6]),) > >> Just do i[0]. It's an array, not a string. Try typing "type(i[0])" >> and see what it tells you. > > Which still begs the question: why does nonzero() return a tuple with an > array in it, rather than just the array? > > Is it so you can so this? > > >>> a = numpy.array(((3,0,4),(5,21,0))) > > >>> numpy.nonzero(a) > (array([0, 0, 1, 1]), array([0, 2, 0, 1])) > > >>> a[numpy.nonzero(a)] > array([ 3, 4, 5, 21])
Yes, consistency between the 1-D case and the N-D case. -- Robert Kern "I have come to believe that the whole world is an enigma, a harmless enigma that is made terrible by our own mad attempt to interpret it as though it had an underlying truth." -- Umberto Eco _______________________________________________ Numpy-discussion mailing list [email protected] http://projects.scipy.org/mailman/listinfo/numpy-discussion
