Increasingly, NumPy does not considers booleans to be integer types, and indexing is one of these cases.
So no, it will not be treated as a tuple of integers, but as a 0d mask Eric On Wed, 13 Dec 2017 at 12:44 Joe <solar...@posteo.org> wrote: > Hi, > > yet another question. > > I looked through the indexing rules in the > documentation but I count not find which one > applies to x[True] and x[False] > > that might e.g result from > > import numpy as np > x = np.array(3) > x[x>5] > x[x<1] > x[True] > x[False] > > x = np.random.rand(2,3) > x[x>5] > x[x<1] > x[True] > x[False] > > I understood that they are equivalent to > > x[(False,)] > > I tested it and it looks like advanced indexing, > but I try to unterstand the logic behind this, > if there is any :) > > In x[x<1] the x<1 is a mask and thus I guess it is a > "tuple with at least one sequence object or ndarray (of data type > integer or bool)", right? > > Or will x[True] trigger basic indexing as it is "a tuple of integers" > because True will be converted to Int? > > Cheers, > Joe > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@python.org > https://mail.python.org/mailman/listinfo/numpy-discussion >
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@python.org https://mail.python.org/mailman/listinfo/numpy-discussion