Thanks. I starts to use python do some real data processing and has bunch of questions.
Chao 2011/10/13 Benjamin Root <[email protected]> > On Thu, Oct 13, 2011 at 11:13 AM, Chao YUE <[email protected]> wrote: > >> Dear all, >> >> sorry for this stupid question but I cannot find it in numpy tutorial or >> google. >> suppose I have a=np.arange(11). >> >> In [32]: a < 8 >> Out[32]: >> array([ True, True, True, True, True, True, True, True, False, >> False, False], dtype=bool) >> >> In [34]: a > 4 >> Out[34]: >> array([False, False, False, False, False, True, True, True, True, >> True, True], dtype=bool) >> >> how can I have boolean index like 4 < a < 8 >> np.where(a>4 and a<8);or plainly input "a>4 and a<8" doesn't work. >> >> thanks, >> >> Chao >> >> > Unfortunately, you can't use "and", "or", "not" keywords with boolean > arrays because numpy can't overload them. Instead, use the bitwise > operators: '&', '|', and '~'. Be careful, though, because of operator > precedence is different for bitwise operators than the boolean keywords. I > am in the habit of always wrapping my boolean expressions in parentheses, > just in case. > > (a > 4) & (a < 8) > > is what you want. Note that "a > 4 & a < 8" would be evaluated in a > different order -- "4 & a" would be first. > > I hope that helps! > > Ben Root > > > _______________________________________________ > NumPy-Discussion mailing list > [email protected] > http://mail.scipy.org/mailman/listinfo/numpy-discussion > > -- *********************************************************************************** Chao YUE Laboratoire des Sciences du Climat et de l'Environnement (LSCE-IPSL) UMR 1572 CEA-CNRS-UVSQ Batiment 712 - Pe 119 91191 GIF Sur YVETTE Cedex Tel: (33) 01 69 08 29 02; Fax:01.69.08.77.16 ************************************************************************************
_______________________________________________ NumPy-Discussion mailing list [email protected] http://mail.scipy.org/mailman/listinfo/numpy-discussion
