Hello, I have an array of non-numeric data, and I want to create a boolean array denoting whether each element in this array is a "valid" value or not. This is straightforward if there's only one possible valid value: >>> import numpy as N >>> ar = N.array(("a", "b", "c", "b", "b", "a", "d", "c", "a")) >>> ar == "a" array([ True, False, False, False, False, True, False, False, True], dtype=bool)
If there's multiple possible valid values, I've come up with a couple possible methods, but they all seem to be inefficient or kludges: >>> valid = N.array(("a", "c")) >>> (ar == valid[0]) | (ar == valid[1]) array([ True, False, True, False, False, True, False, True, True], dtype=bool) >>> N.array(map(lambda x: x in valid, ar)) array([ True, False, True, False, False, True, False, True, True], dtype=bool) Is there a numpy-appropriate way to do this? Thanks, Brett Olsen _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion