def interp(self, attrs=None): """Return values of variables in attrs, interpolated by method set with set_interpolated(). Parameters ---------- attrs : str or list or None Variable or List of variables to interpolate. If None, the whole table is returned interpolated. Returns ------- X : array (n_inst x n_attrs) or Timeseries Interpolated variables attrs in columns. """ from orangecontrib.timeseries import interpolate_timeseries # FIXME: This interpolates the whole table, might be an overhead # if only a single attr is required interpolated = interpolate_timeseries(self, self._interp_method, self._interp_multivariate) if attrs is None: return interpolated if isinstance(attrs, str): attrs = [attrs] return Table(Domain([], [], attrs, interpolated.domain), interpolated).metas
def test_methods(self): for method in ('linear', 'cubic', 'nearest', 'mean'): interpolated = interpolate_timeseries(self.data, method=method) self.assertFalse(np.isnan(interpolated.Y).any()) self.assertTrue(np.isnan(self.data.Y).any())