Example #1
0
    def set_learner(self, learner: CoxRegressionLearner()):
        if learner:
            self.learner = learner
        else:
            self.learner = CoxRegressionLearner()

        self.invalidate()
    def create_learner(self):
        alpha = self.alphas[self.alpha_index]

        if self.reg_type == OWCoxRegression.COX:
            learner = CoxRegressionLearner()
        elif self.reg_type == OWCoxRegression.Ridge:
            learner = CoxRegressionLearner(penalizer=alpha, l1_ratio=0)
        elif self.reg_type == OWCoxRegression.Lasso:
            learner = CoxRegressionLearner(penalizer=alpha, l1_ratio=1)
        elif self.reg_type == OWCoxRegression.Elastic:
            learner = CoxRegressionLearner(penalizer=alpha, l1_ratio=1 - self.l2_ratio)

        return learner
Example #3
0
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        ConcurrentWidgetMixin.__init__(self)
        self.data: Optional[Table] = None
        self.learner: CoxRegressionLearner = CoxRegressionLearner()

        self.stratify_on_options = [
            (StratifyOn.CoxRiskScore, 'Cox Risk Score'),
        ]

        self.splitting_criteria_options = [
            (SplittingCriteria.Median, 'Median'),
            (SplittingCriteria.Mean, 'Mean'),
            (SplittingCriteria.LogRankTest, 'Log Rank Test'),
        ]

        box = gui.vBox(self.controlArea, 'Stratify on', margin=0)
        gui.comboBox(
            box,
            self,
            'stratify_on',
            items=(label for _, label in self.stratify_on_options),
            callback=self.commit.deferred,
        )

        box = gui.vBox(self.controlArea, 'Splitting Criteria', margin=0)
        self.radio_buttons = gui.radioButtons(box, self, 'splitting_criteria', callback=self.commit.deferred)

        for _, opt in self.splitting_criteria_options:
            gui.appendRadioButton(self.radio_buttons, opt)

        self.commit_button = gui.auto_commit(self.controlArea, self, 'auto_commit', '&Commit', box=False)
Example #4
0
    def __init__(self):
        OWWidget.__init__(self)
        ConcurrentWidgetMixin.__init__(self)

        self.learner: Optional[CoxRegressionLearner] = CoxRegressionLearner()
        self.data: Optional[Table] = None
        self.trace: Optional[List[Result]] = None
        gui.rubber(self.controlArea)

        self.graph: StepwiseCoxRegressionPlot = StepwiseCoxRegressionPlot(
            parent=self)
        self.graph.selection_line_moved.connect(self.on_selection_changed)
        self.mainArea.layout().addWidget(self.graph)
        self.graph.setAntialiasing(True)

        gui.rubber(self.controlArea)
        self.commit_button = gui.auto_commit(self.controlArea,
                                             self,
                                             'auto_commit',
                                             '&Commit',
                                             box=False)
Example #5
0
 def set_learner(self, learner: CoxRegressionLearner):
     self.learner = learner or CoxRegressionLearner()
     self.commit.now()