From 1053764068a50e2b95e0f0b07cb4111369ce8ff8 Mon Sep 17 00:00:00 2001 From: DannyArends Date: Thu, 24 Mar 2016 22:08:44 +0100 Subject: Adding parameters, and passing them to the CTL algorithm --- wqflask/wqflask/ctl/ctl_analysis.py | 26 +++++++++++++----- wqflask/wqflask/templates/ctl_setup.html | 46 ++++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+), 7 deletions(-) diff --git a/wqflask/wqflask/ctl/ctl_analysis.py b/wqflask/wqflask/ctl/ctl_analysis.py index 44bade5c..77e34143 100644 --- a/wqflask/wqflask/ctl/ctl_analysis.py +++ b/wqflask/wqflask/ctl/ctl_analysis.py @@ -79,6 +79,18 @@ class CTL(object): self.trait_db_list = [trait.strip() for trait in requestform['trait_list'].split(',')] self.trait_db_list = [x for x in self.trait_db_list if x] + print("strategy:", requestform.get("strategy")) + strategy = requestform.get("strategy") + + print("nperm:", requestform.get("nperm")) + nperm = int(requestform.get("nperm")) + + print("parametric:", requestform.get("parametric")) + parametric = bool(requestform.get("parametric")) + + print("significance:", requestform.get("significance")) + significance = float(requestform.get("significance")) + # Get the name of the .geno file belonging to the first phenotype datasetname = self.trait_db_list[0].split(":")[1] dataset = data_set.create_dataset(datasetname) @@ -120,26 +132,26 @@ class CTL(object): rPheno = r_data_frame(rPheno) rGeno = r_data_frame(rGeno) - r_write_table(rGeno, "~/outputGN/geno.csv") - r_write_table(rPheno, "~/outputGN/pheno.csv") + # Debug: Print the genotype and phenotype files to disk + #r_write_table(rGeno, "~/outputGN/geno.csv") + #r_write_table(rPheno, "~/outputGN/pheno.csv") # Perform the CTL scan - res = self.r_CTLscan(rGeno, rPheno, ncores = 6) + res = self.r_CTLscan(rGeno, rPheno, strategy = strategy, nperm = nperm, parametric = parametric, ncores = 6) # Get significant interactions - significant = self.r_CTLsignificant(res) - - print(significant[0]) + significant = self.r_CTLsignificant(res, significance = significance) # Create an image for output self.results = {} self.results['imgurl'] = webqtlUtil.genRandStr("WGCNAoutput_") + ".png" self.results['imgloc'] = GENERATED_IMAGE_DIR + self.results['imgurl'] self.results['ctlresult'] = significant + self.results['requestform'] = requestform # Store the user specified parameters for the output page # Create the lineplot r_png(self.results['imgloc'], width=1000, height=600) - self.r_lineplot(res) + self.r_lineplot(res, significance = significance) r_dev_off() # Flush any output from R diff --git a/wqflask/wqflask/templates/ctl_setup.html b/wqflask/wqflask/templates/ctl_setup.html index 0ba281c6..9c0d7bea 100644 --- a/wqflask/wqflask/templates/ctl_setup.html +++ b/wqflask/wqflask/templates/ctl_setup.html @@ -8,11 +8,57 @@
+ + + + + + + + + +
+
-- cgit v1.2.3