def setup(self, table): """ normalize the data ranges before calling parent setup with normalized table """ self.data = table.to_numpyMA('ac')[0] pred_columns = [table.domain.index(table.domain[c]) for c in self.cols] search_cols = [pos for pos in pred_columns if table.domain[pos].varType != orange.VarTypes.Discrete] bounds = Zero.compute_bounds(self.data[:, search_cols]) self.zero = Zero(search_cols, bounds=bounds) self.zerod_data = self.zero.zero(self.data) self.zerod_table = Orange.data.Table(table.domain, self.zerod_data.data) super(ZeroBottomUp, self).setup(self.zerod_table)