]]in [ ]data[names ='bob' out[ ]array( ]to select everything but 'bob'you can either use !or negate the condition using -in [ ]names !'bobout[ ]array([falsetruetruefalsetruetruetrue]dtype=boolin [ ]data[-(names ='bob')out[ ]array([[- - ][- - ][- - ] ] - - ]]selecting two of the three names to combine multiple boolean conditionsuse boolean arithmetic operators like (andand (or)in [ ]mask (names ='bob'(names ='will'in [ ]mask out[ ]array([truefalsetruetruetruefalsefalse]dtype=boolin [ ]data[maskout[ ]array([[- - [- - - [- - ] ] ] ]]selecting data from an array by boolean indexing always creates copy of the dataeven if the returned array is unchanged the python keywords and and or do not work with boolean arrays setting values with boolean arrays works in common-sense way to set all of the negative values in data to we need only doin [ ]data[data in [ ]data out[ ]array([ ] ] ] ] ] ] ]]the numpy ndarraya multidimensional array object www it-ebooks info