From bac2951f608076e6863a418d62f1d9ab0b27964f Mon Sep 17 00:00:00 2001 From: Steve Reis <stevereis93@gmail.com> Date: Tue, 17 Jan 2023 18:03:13 +0100 Subject: [PATCH] fix: enabled LR Cross-Validation, Cast numbers -> strings --- .../algorithms/logistic-regression-cv.handler.ts | 11 +++++------ .../exareme/transformations/algorithms/index.ts | 2 +- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/api/src/engine/connectors/exareme/handlers/algorithms/logistic-regression-cv.handler.ts b/api/src/engine/connectors/exareme/handlers/algorithms/logistic-regression-cv.handler.ts index 2edb63d..cded114 100644 --- a/api/src/engine/connectors/exareme/handlers/algorithms/logistic-regression-cv.handler.ts +++ b/api/src/engine/connectors/exareme/handlers/algorithms/logistic-regression-cv.handler.ts @@ -47,7 +47,7 @@ export default class LogisticRegressionCVHandler extends BaseHandler { private canHandle(experiment: Experiment, data: unknown): boolean { return ( experiment.algorithm.name.toLowerCase() === - LogisticRegressionCVHandler.ALGO_NAME && + LogisticRegressionCVHandler.ALGO_NAME && !!data && !!data[0] && !!data[0]['summary'] @@ -61,10 +61,7 @@ export default class LogisticRegressionCVHandler extends BaseHandler { name: lookupDict[key], type: 'string', })), - data: data.summary['row_names'].map((key: any, i: number) => { - // could be optimized - return [key, ...keys.map((k) => data['summary'][k][i])]; - }), + data: data.summary['row_names'].map((key: any, i: number) => [key, ...keys.map((k) => `${data['summary'][k][i]}`)]) }; } @@ -131,6 +128,8 @@ export default class LogisticRegressionCVHandler extends BaseHandler { this.getROC(improvedData), ]; - results.filter((r) => !!r).forEach((r) => experiment.results.push(r)); + results.filter((r) => !!r).forEach((r) => { + experiment.results.push(r); + }); } } diff --git a/api/src/engine/connectors/exareme/transformations/algorithms/index.ts b/api/src/engine/connectors/exareme/transformations/algorithms/index.ts index e32d56f..bee4e4a 100644 --- a/api/src/engine/connectors/exareme/transformations/algorithms/index.ts +++ b/api/src/engine/connectors/exareme/transformations/algorithms/index.ts @@ -9,7 +9,7 @@ const transformToAlgorithms = jsonata(` $checkVal:= function($val) { $val ? $val : undefined}; $excludedParams:= ['centers', 'formula']; $includes:= ['ANOVA_ONEWAY','ANOVA','LINEAR_REGRESSION', - 'LOGISTIC_REGRESSION','TTEST_INDEPENDENT','TTEST_PAIRED', + 'LOGISTIC_REGRESSION', 'LOGISTIC_REGRESSION_CV','TTEST_INDEPENDENT','TTEST_PAIRED', 'PEARSON','ID3','KMEANS','NAIVE_BAYES', 'TTEST_ONESAMPLE','PCA','CALIBRATION_BELT','CART', 'KAPLAN_MEIER','THREE_C', 'ONE_WAY_ANOVA', 'PEARSON_CORRELATION', 'LINEAR_REGRESSION_CV', 'TTEST_ONESAMPLE', 'PAIRED_TTEST']; -- GitLab