From 5a40f9574b4644940dd9068a096fa8b44276d262 Mon Sep 17 00:00:00 2001 From: Julian Matschinske <ge93nar@mytum.de> Date: Tue, 14 Apr 2020 13:36:42 +0200 Subject: [PATCH] Extend frontend with option to exclude viral non seed baits --- .../analysis-window.component.html | 7 +++++ .../launch-analysis.component.html | 28 +++++++++++++++++++ .../launch-analysis.component.ts | 11 ++++++-- 3 files changed, 44 insertions(+), 2 deletions(-) diff --git a/src/app/components/analysis-window/analysis-window.component.html b/src/app/components/analysis-window/analysis-window.component.html index c589a593..6c42eac0 100644 --- a/src/app/components/analysis-window/analysis-window.component.html +++ b/src/app/components/analysis-window/analysis-window.component.html @@ -59,6 +59,13 @@ <i *ngIf="!task.info.parameters.includeNonApprovedDrugs" class="fa fa-times"></i> </td> </tr> + <tr *ngIf="task.info.parameters.ignoreNonSeedBaits !== undefined && task.info.target === 'drug-target'"> + <td>Include non-seed viral proteins</td> + <td> + <i *ngIf="!task.info.parameters.ignoreNonSeedBaits" class="fa fa-check"></i> + <i *ngIf="task.info.parameters.ignoreNonSeedBaits" class="fa fa-times"></i> + </td> + </tr> <tr *ngIf="task.info.parameters.resultSize"> <td>Result Size</td> <td>{{task.info.parameters.resultSize}}</td> diff --git a/src/app/components/launch-analysis/launch-analysis.component.html b/src/app/components/launch-analysis/launch-analysis.component.html index f4d81847..036a7041 100644 --- a/src/app/components/launch-analysis/launch-analysis.component.html +++ b/src/app/components/launch-analysis/launch-analysis.component.html @@ -70,6 +70,13 @@ required> </div> </div> + <div class="field" *ngIf="target === 'drug-target'"> + <label class="label">Include non-seed viral proteins</label> + <app-toggle textOn="Include" textOff="Ignore" + tooltipOn="Include viral proteins that are not seeds." + tooltipOff="Exclude viral proteins that are not seeds." + [(value)]="trustrankIncludeViralNonSeeds"></app-toggle> + </div> <div class="field"> <label class="label" for="trustrank-rs">Result Size</label> <div class="control"> @@ -97,6 +104,13 @@ tooltipOff="Exclude non-approved drugs from the result." [(value)]="closenessIncludeNonApprovedDrugs"></app-toggle> </div> + <div class="field" *ngIf="target === 'drug-target'"> + <label class="label">Include non-seed viral proteins</label> + <app-toggle textOn="Include" textOff="Ignore" + tooltipOn="Include viral proteins that are not seeds." + tooltipOff="Exclude viral proteins that are not seeds." + [(value)]="closenessIncludeViralNonSeeds"></app-toggle> + </div> <div class="field"> <label class="label" for="closeness-rs">Result Size</label> <div class="control"> @@ -118,6 +132,13 @@ tooltipOff="Exclude non-approved drugs from the result." [(value)]="degreeIncludeNonApprovedDrugs"></app-toggle> </div> + <div class="field" *ngIf="target === 'drug-target'"> + <label class="label">Include non-seed viral proteins</label> + <app-toggle textOn="Include" textOff="Ignore" + tooltipOn="Include viral proteins that are not seeds." + tooltipOff="Exclude viral proteins that are not seeds." + [(value)]="degreeIncludeViralNonSeeds"></app-toggle> + </div> <div class="field"> <label class="label" for="degree-rs">Result Size</label> <div class="control"> @@ -190,6 +211,13 @@ </div> </div> </div> + <div class="field" *ngIf="target === 'drug-target'"> + <label class="label">Include non-seed viral proteins</label> + <app-toggle textOn="Include" textOff="Ignore" + tooltipOn="Include viral proteins that are not seeds." + tooltipOff="Exclude viral proteins that are not seeds." + [(value)]="multisteinerIncludeViralNonSeeds"></app-toggle> + </div> </div> </section> diff --git a/src/app/components/launch-analysis/launch-analysis.component.ts b/src/app/components/launch-analysis/launch-analysis.component.ts index ed3aaace..c3575198 100644 --- a/src/app/components/launch-analysis/launch-analysis.component.ts +++ b/src/app/components/launch-analysis/launch-analysis.component.ts @@ -33,16 +33,19 @@ export class LaunchAnalysisComponent implements OnInit, OnChanges { // Trustrank Parameters public trustrankIncludeIndirectDrugs = false; public trustrankIncludeNonApprovedDrugs = false; + public trustrankIncludeViralNonSeeds = true; public trustrankDampingFactor = 0.85; public trustrankResultSize = 20; // Closeness Parameters public closenessIncludeIndirectDrugs = false; public closenessIncludeNonApprovedDrugs = false; + public closenessIncludeViralNonSeeds = true; public closenessResultSize = 20; // Degree Parameters public degreeIncludeNonApprovedDrugs = false; + public degreeIncludeViralNonSeeds = true; public degreeResultSize = 20; // Keypathwayminer Parameters @@ -51,6 +54,7 @@ export class LaunchAnalysisComponent implements OnInit, OnChanges { // Multisteiner Parameters public multisteinerNumTrees = 5; public multisteinerTolerance = 10; + public multisteinerIncludeViralNonSeeds = true; public hasBaits; @@ -91,16 +95,18 @@ export class LaunchAnalysisComponent implements OnInit, OnChanges { parameters.damping_factor = this.trustrankDampingFactor; parameters.include_indirect_drugs = this.trustrankIncludeIndirectDrugs; parameters.include_non_approved_drugs = this.trustrankIncludeNonApprovedDrugs; + parameters.ignore_non_seed_baits = !this.trustrankIncludeViralNonSeeds; parameters.result_size = this.trustrankResultSize; } else if (this.algorithm === 'closeness') { parameters.strain_or_drugs = this.target === 'drug' ? 'drugs' : this.dataset; parameters.include_indirect_drugs = this.closenessIncludeIndirectDrugs; parameters.include_non_approved_drugs = this.closenessIncludeNonApprovedDrugs; + parameters.ignore_non_seed_baits = !this.closenessIncludeViralNonSeeds; parameters.result_size = this.closenessResultSize; } else if (this.algorithm === 'degree') { parameters.strain_or_drugs = this.target === 'drug' ? 'drugs' : this.dataset; - parameters.include_indirect_drugs = this.closenessIncludeIndirectDrugs; - parameters.include_non_approved_drugs = this.closenessIncludeNonApprovedDrugs; + parameters.include_non_approved_drugs = this.degreeIncludeNonApprovedDrugs; + parameters.ignore_non_seed_baits = !this.degreeIncludeViralNonSeeds; parameters.result_size = this.closenessResultSize; } else if (this.algorithm === 'keypathwayminer') { parameters.k = this.keypathwayminerK; @@ -108,6 +114,7 @@ export class LaunchAnalysisComponent implements OnInit, OnChanges { parameters.strain_or_drugs = this.dataset; parameters.num_trees = this.multisteinerNumTrees; parameters.tolerance = this.multisteinerTolerance; + parameters.ignore_non_seed_baits = !this.multisteinerIncludeViralNonSeeds; } await this.analysis.startAnalysis(this.algorithm, this.target, parameters); -- GitLab