diff options
Diffstat (limited to 'gn3/computations/rqtl.py')
| -rw-r--r-- | gn3/computations/rqtl.py | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/gn3/computations/rqtl.py b/gn3/computations/rqtl.py index c8a828d..941a19b 100644 --- a/gn3/computations/rqtl.py +++ b/gn3/computations/rqtl.py @@ -1,5 +1,6 @@ """Procedures related to R/qtl computations""" import os +import csv from bisect import bisect from typing import Dict, List, Tuple, Union @@ -317,14 +318,10 @@ def process_perm_output(file_name: str) -> Tuple[List, float, float]: outdir = os.path.join(get_tmpdir(), "gn3") with open(os.path.join(outdir, file_name), - "r", encoding="utf-8") as the_file: - - for i, line in enumerate(the_file): - if i == 0: - # Skip header line - continue - _snp, _chromosome, _position, lod_score = line.split(",") - perm_results.append(float(lod_score)) - suggestive = np.percentile(np.array(perm_results), 67) - significant = np.percentile(np.array(perm_results), 95) + "r", encoding="utf-8") as file_handler: + reader = csv.reader(file_handler) + next(reader) + perm_results = [float(row[1]) for row in reader] # Extract LOD values + suggestive = np.percentile(np.array(perm_results), 67) + significant = np.percentile(np.array(perm_results), 95) return perm_results, suggestive, significant |
