def test_simple(self): data = Orange.data.Table("iris") f = GaussianSmoothing(sd=1.) data = data[:1] fdata = f(data) np.testing.assert_almost_equal( fdata.X, [[4.4907066, 3.2794677, 1.7641664, 0.6909083]])
def test_unknown_no_propagate(self): data = Orange.data.Table("iris") f = GaussianSmoothing() data = data[:5] for i in range(4): data.X[i, i] = np.nan data.X[4] = np.nan fdata = f(data) np.testing.assert_equal(np.sum(np.isnan(fdata.X), axis=1), [1, 1, 1, 1, 4])
Rerturn appropriate test file for a preprocessor. Very slow preprocessors should get smaller files. """ if isinstance(preproc, ME_EMSC): return SMALLER_COLLAGEN return SMALL_COLLAGEN # Preprocessors that work per sample and should return the same # result for a sample independent of the other samples PREPROCESSORS_INDEPENDENT_SAMPLES = [ Interpolate(np.linspace(1000, 1700, 100)), SavitzkyGolayFiltering(window=9, polyorder=2, deriv=2), Cut(lowlim=1000, highlim=1800), GaussianSmoothing(sd=3.), Absorbance(), Transmittance(), Integrate(limits=[[900, 100], [1100, 1200], [1200, 1300]]), Integrate(methods=Integrate.Simple, limits=[[1100, 1200]]), Integrate(methods=Integrate.Baseline, limits=[[1100, 1200]]), Integrate(methods=Integrate.PeakMax, limits=[[1100, 1200]]), Integrate(methods=Integrate.PeakBaseline, limits=[[1100, 1200]]), Integrate(methods=Integrate.PeakAt, limits=[[1100]]), Integrate(methods=Integrate.PeakX, limits=[[1100, 1200]]), Integrate(methods=Integrate.PeakXBaseline, limits=[[1100, 1200]]), RubberbandBaseline(), LinearBaseline(), Normalize(method=Normalize.Vector), Normalize(method=Normalize.Area, int_method=Integrate.PeakMax,