def _send_output(self) -> None: """ Create corpus with scores and output it """ if self.corpus is None: self.Outputs.corpus.send(None) self.Outputs.selected_documents.send(None) return scores, labels = self._gather_scores() if labels: d = self.corpus.domain domain = Domain( d.attributes, d.class_var, metas=d.metas + tuple( ContinuousVariable(get_unique_names(d, l)) for l in labels), ) out_corpus = Corpus( domain, self.corpus.X, self.corpus.Y, np.hstack([self.corpus.metas, scores]), ) Corpus.retain_preprocessing(self.corpus, out_corpus) else: out_corpus = self.corpus self.Outputs.corpus.send( create_annotated_table(out_corpus, self.selected_rows)) self.Outputs.selected_documents.send( out_corpus[self.selected_rows] if self.selected_rows else None)
def _send_output(self, scores: np.ndarray, labels: List[str]) -> None: """ Create corpus with scores and output it """ if labels: d = self.corpus.domain domain = Domain( d.attributes, d.class_var, metas=d.metas + tuple(ContinuousVariable(l) for l in labels), ) corpus = Corpus( domain, self.corpus.X, self.corpus.Y, np.hstack([self.corpus.metas, scores]), ) Corpus.retain_preprocessing(self.corpus, corpus) self.Outputs.corpus.send(corpus) elif self.corpus is not None: self.Outputs.corpus.send(self.corpus) else: self.Outputs.corpus.send(None)