Source code for gui.core.crossValidateMethods.cv_ARD
from PyQt5 import QtWidgets
from sklearn.linear_model import ARDRegression
from gui.ui.cv_ARD import Ui_Form
from gui.util.Modules import Modules
[docs]
class Ui_Form(Ui_Form, ARDRegression, Modules):
[docs]
    def toggle_params(self, widgets, state):
        for w in widgets:
            if state:
                w.setHidden(True)
            else:
                w.setHidden(False)
[docs]
    def connectWidgets(self):
        alphawidgets = [self.alpha1Label, self.alpha1LineEdit,
            self.alpha2Label, self.alpha2LineEdit]
        lambdawidgets = [self.lambdaLabel, self.lambdaLineEdit,
            self.lambdaLabel_2, self.lambdaLineEdit_2]
        self.alpha_checkbox.stateChanged.connect(
            lambda: self.toggle_params(
                alphawidgets,
                self.alpha_checkbox.isChecked()
            )
        )
        self.lambda_checkbox.stateChanged.connect(
            lambda: self.toggle_params(
                lambdawidgets,
                self.lambda_checkbox.isChecked()
            )
        )
        self.alpha_checkbox.setChecked(True)
        self.lambda_checkbox.setChecked(True)
        # self.FitIntercept_list.setCurrentItem(
        #     self.FitIntercept_list.findItems(str(self.fit_intercept),
        #     QtCore.Qt.MatchExactly)[0])
        # self.Normalize_list.setCurrentItem(
        #     self.Normalize_list.findItems(str(self.normalize),
        #     QtCore.Qt.MatchExactly)[0])
[docs]
    def run(self):
        fit_intercept_items = [i.text() == 'True' for i in
            self.FitIntercept_list.selectedItems()]
        normalize_items = [i.text() == 'True' for i in
            self.Normalize_list.selectedItems()]
        params = {
            'n_iter': [int(i) for i in
                self.numOfIterationsLineEdit.text().split(',')],
            'tol': [float(i) for i in
                self.toleranceLineEdit.text().split(',')],
            'alpha_1': [float(i) for i in
                self.alpha1LineEdit.text().split(',')],
            'alpha_2': [float(i) for i in
                self.alpha2LineEdit.text().split(',')],
            'lambda_1': [float(i) for i in
                self.lambdaLineEdit.text().split(',')],
            'lambda_2': [float(i) for i in
                self.lambdaLineEdit_2.text().split(',')],
            'compute_score': [False],
            'threshold_lambda': [float(i) for i in
                self.thresholdLambdaLineEdit.text().split(
                    ','
                )],
            'fit_intercept': fit_intercept_items,
            'normalize': normalize_items,
            'copy_X': [True],
            'verbose': [True]
        }
        return params
if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    Form = QtWidgets.QWidget()
    ui = Ui_Form()
    ui.setupUi(Form)
    Form.show()
    sys.exit(app.exec_())