def _get_aux_plot_filtered(self, po, vs, es=None): omits = [] invalids = [] outliers = [] fs = po.filter_str nsigma = po.sigma_filter_n if fs or nsigma: if es is None: es = zeros_like(vs) ufs = vstack((vs, es)).T filter_str_idx = None if fs: filter_str_idx = filter_ufloats(ufs, fs) ftag = po.filter_str_tag.lower() if ftag == 'invalid': invalids.extend(filter_str_idx) elif ftag == 'outlier': outliers.extend(filter_str_idx) else: omits.extend(filter_str_idx) if nsigma: vs = ma.array(vs, mask=False) if filter_str_idx is not None: vs.mask[filter_str_idx] = True sigma_idx = sigma_filter(vs, nsigma) stag = po.sigma_filter_tag.lower() if stag == 'invalid': invalids.extend(sigma_idx) elif stag == 'outlier': outliers.extend(sigma_idx) else: omits.extend(sigma_idx) return omits, invalids, outliers
def _get_aux_plot_filtered(self, po, vs, es=None): omits = [] invalids = [] outliers = [] fs = po.filter_str nsigma = po.sigma_filter_n if fs or nsigma: if es is None: es = zeros_like(vs) ufs = vstack((vs, es)).T if fs: filter_str_idx = filter_ufloats(ufs, fs) ftag = po.filter_str_tag.lower() if ftag == 'invalid': invalids.extend(filter_str_idx) elif ftag == 'outlier': outliers.extend(filter_str_idx) else: omits.extend(filter_str_idx) if nsigma: vs = ma.array(vs, mask=False) vs.mask[filter_str_idx] = True sigma_idx = sigma_filter(vs, nsigma) stag = po.sigma_filter_tag.lower() if stag == 'invalid': invalids.extend(sigma_idx) elif stag == 'outlier': outliers.extend(sigma_idx) else: omits.extend(sigma_idx) return omits, invalids, outliers
def test_multichar_str(self): o = filter_ufloats([(1, 1), (10, 1), (20, 11)], 'age>10 or percent_error>50') self.assertListEqual(o, [0, 2])
def test_or_ufloats_percent(self): o = filter_ufloats([(1, 1), (10, 1), (20, 11)], 'x>10 or percent_error>50') self.assertListEqual(o, [0, 2])
def test_and_ufloats(self): o = filter_ufloats([(1, 1), (10, 1), (20, 11)], 'x>10 and error>10') self.assertListEqual(o, [2])
def test_or_ufloats(self): o = filter_ufloats([(1, 1), (10, 11), (20, 1)], 'x>10 or error>10') self.assertListEqual(o, [1, 2])