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 setupUi(self, Form): super().setupUi(Form) self.checkMinAndMax() self.connectWidgets()
[docs] def get_widget(self): return self.formGroupBox
[docs] def setHidden(self, bool): self.get_widget().setHidden(bool)
[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_())