From 89eb9983f8eb019b70c5b936b03e096e2257a1ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Mon, 29 Oct 2018 09:33:56 -0400 Subject: [PATCH 001/206] convert BED file to FASTA (one per cluster) --- bin/bed_to_fasta.R | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 bin/bed_to_fasta.R diff --git a/bin/bed_to_fasta.R b/bin/bed_to_fasta.R new file mode 100644 index 0000000..f63b06f --- /dev/null +++ b/bin/bed_to_fasta.R @@ -0,0 +1,25 @@ +bed <- data.table::data.table(1:10,1:10,c("AAAAAAAAA","CTGAGA","CCCTAGC","GC","AA","ACGTACGTGTCA","GGGCCGCTA","GCA","TTTTTGCA","AAAATCGACGT"),c(1,2,3,1,1,1,2,2,3,3)) + +#!/usr/bin/env Rscript + +# Splitting BED-files depending on their cluster. +# The Sequences of each cluster are writen as an FASTA-file. +# @parameter bedInput BED-file with sequences and cluster-id as column +# @parameter out output directory +# @parameter prefix prefix for filenames + +args = commandArgs(trailingOnly = TRUE) + + +bedInput <- args[1] +out <- args[2] # "G://Rene.Wiegandt/10_Master/" +prefix <- args[3] # "Fasta" + +bed <- data.table::fread(bedInput, header = FALSE, sep = "\t") + +clusters <- split(bed, bed$V4, sorted = TRUE, flatten = FALSE) # <---- Spalte mit Cluster +discard <- lapply(1:length(clusters), function(i){ + sequences <- as.list(as.data.frame(clusters[i])[[3]]) # <---- Splate mit Sequenz + outfile <- paste0(out,prefix,"_cluster_",i) + seqinr::write.fasta(sequences = sequences, names = as.data.frame(clusters[i])[[2]], file.out = outfile, as.string = TRUE) # <---- Spalte mit Name +}) From 4c86efd4b30e9a2844fca48d27a768e2816da4c4 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 29 Oct 2018 16:00:24 +0100 Subject: [PATCH 002/206] removing redundant code --- bin/bed_to_fasta.R | 3 --- 1 file changed, 3 deletions(-) diff --git a/bin/bed_to_fasta.R b/bin/bed_to_fasta.R index f63b06f..d91f88d 100644 --- a/bin/bed_to_fasta.R +++ b/bin/bed_to_fasta.R @@ -1,5 +1,3 @@ -bed <- data.table::data.table(1:10,1:10,c("AAAAAAAAA","CTGAGA","CCCTAGC","GC","AA","ACGTACGTGTCA","GGGCCGCTA","GCA","TTTTTGCA","AAAATCGACGT"),c(1,2,3,1,1,1,2,2,3,3)) - #!/usr/bin/env Rscript # Splitting BED-files depending on their cluster. @@ -10,7 +8,6 @@ bed <- data.table::data.table(1:10,1:10,c("AAAAAAAAA","CTGAGA","CCCTAGC","GC","A args = commandArgs(trailingOnly = TRUE) - bedInput <- args[1] out <- args[2] # "G://Rene.Wiegandt/10_Master/" prefix <- args[3] # "Fasta" From 317b83d759590f422016e48201b23c3b8392f87c Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 10:17:27 +0100 Subject: [PATCH 003/206] starting to work with custom peak calling --- call_peaks.py | 348 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 348 insertions(+) create mode 100644 call_peaks.py diff --git a/call_peaks.py b/call_peaks.py new file mode 100644 index 0000000..10d4185 --- /dev/null +++ b/call_peaks.py @@ -0,0 +1,348 @@ + +""" +call_peaks uses the uncontinuous score from a bigWig file to estimate peaks +@author: Anastasiia Petrova +@contact: anastasiia.petrova(at)mpi-bn.mpg.de +""" + +import argparse +import sys +import os +import re +import time +import multiprocessing +import logging +import subprocess +from Bio import SeqIO +import Bio.SeqIO.FastaIO as bio +import numpy as np +from collections import defaultdict +from scipy import stats +import pyBigWig +from statsmodels.sandbox.stats.multicomp import multipletests #for bonfferoni +import matplotlib.pyplot as plt +import random + +import textwrap + +logger = logging.getLogger('call_peaks') +logger.setLevel(logging.INFO) + +formatter = logging.Formatter("%(asctime)s : %(message)s", "%Y-%m-%d %H:%M") + +def parse_args(): + + parser = argparse.ArgumentParser(prog = '', description = textwrap.dedent(''' + + This script produces a file with peaks in .bed format from the file with scores in .bigWig format. + '''), epilog='That is what you need to make this script work for you. Enjoy it') + + required_arguments = parser.add_argument_group('required arguments') + required_arguments.add_argument('--bigwig', help='a bigWig-file with scores', required=True) + required_arguments.add_argument('--bed', help='provide a file with peaks in .bed format', required=True) + + #all other arguments are optional + parser.add_argument('--output_directory', default='output', const='output', nargs='?', help='output directory, by default ./output/') + parser.add_argument('--window_length', default='100', type=int, help='enter the length for a window, by defauld 100 bp') + parser.add_argument('--threshold', default=0.3, type=float, help='enter the threshold for peaks searching, by defauld 0.3') + parser.add_argument('--silent', action='store_true', help='while working with data write the information only into ./call_peaks_log.txt') + args = parser.parse_args() + + return args + +def check_directory(directory): + if not os.path.exists(directory): + os.makedirs(directory) + #logger.info('a new directory ' + directory + ' was created') + print('a new directory ' + directory + ' was created') + +#if there are chars that are not allowed, they will be replaced with '_', to the possibly invalid names there will be added '_' at the beginning of the name +def check_name(name_to_test): + badchars= re.compile(r'[^A-Za-z0-9_. ]+|^\.|\.$|^ | $|^$') + badnames= re.compile(r'(aux|com[1-9]|con|lpt[1-9]|prn)(\.|$)') + + #replace all the chars that are not allowed with '_' + name = badchars.sub('_', name_to_test) + + #check for the reserved by the os names + if badnames.match(name): + name = '_' + name + return name + +#check if the bw score is already saved, if so check if it is bigger than the new one +def save_bw_score(key_for_bed_dict, matches_dict, bw_score, moods_score, which_score): + + if np.isnan(bw_score): bw_score = 0.0 + + #bw_score = moods_score * bw_score #apply moods score as well + + if key_for_bed_dict in matches_dict: + + if which_score == "mean": + #save the mean of both scores + matches_dict[key_for_bed_dict] = np.mean([matches_dict[key_for_bed_dict], bw_score]) + + elif which_score == "greater": + #save the biggest of scores + if matches_dict[key_for_bed_dict] < bw_score: + matches_dict[key_for_bed_dict] = bw_score + + else: + matches_dict[key_for_bed_dict] = bw_score + + return matches_dict + +def remove_file(file): + if os.path.isfile(file): + os.remove(file) + +def clean_directory(cleans, output_directory, motif): + + for clean in cleans: + if clean == 'all' or clean == 'cut_motifs': + remove_file(motif) + #the output_merge.fa will be deleted after processing of the multiprocessing + +def tool_make_output(motif, genome, output_directory, cleans, p_value, bed_dictionary, moods_bg, condition1, condition2, global_mean, global_std, which_score): + + standard_moods_bg = 0.25, 0.25, 0.25, 0.25 + + control_dict = {} + overexpression_dict = {} + + differences = [] + control_dict, overexpression_dict, differences = call_moods(motif, genome, output_directory, p_value, standard_moods_bg, condition2, condition1, control_dict, overexpression_dict, differences, which_score) + + #make arrays of the dictionaries + control_array = [] + overexpression_array = [] + + for key in control_dict: + control_array.append(control_dict[key]) + overexpression_array.append(overexpression_dict[key]) + + motif_name = motif.replace(output_directory, '') + motif_name = motif_name.replace('/', '') + + #make the wilcoxon signed-rank test + my_wilcoxon_pvalue, direction, differences, differences_normalized, motif_std = my_wilcoxon(condition2, condition1, control_array, overexpression_array, global_mean, global_std, motif_name, correction = False) + + clean_directory(cleans, output_directory, motif) + + return my_wilcoxon_pvalue, direction, differences, differences_normalized, motif_std + +def make_name_from_path(full_path, output_directory, ending): + return os.path.join(output_directory, get_name_from_path(full_path) + ending) + +def get_name_from_path(full_path): + return os.path.splitext(os.path.basename(full_path))[0] + +def compute_differences(bed_dictionary, condition1, condition2): + logger.info("the mean and standard deviation for the differences in peaks will be count now") + + bw_cond1 = pyBigWig.open(condition1) + bw_cond2 = pyBigWig.open(condition2) + + global_differences = {} #dict + differences_array = [] #to compute the mean at the end + cond1_array = [] + cond2_array = [] + + for header in bed_dictionary: + header_splitted = re.split(r':', header) + chromosom = header_splitted[0] + positions = re.split(r'-', header_splitted[-1]) + + #compute the background difference for this peak + bw_global_score_cond1 = np.mean(np.nan_to_num(np.array(list(bw_cond1.values(chromosom, int(positions[0]), int(positions[1])))))) + bw_global_score_cond2 = np.mean(np.nan_to_num(np.array(list(bw_cond2.values(chromosom, int(positions[0]), int(positions[1])))))) + bw_global_difference = bw_global_score_cond2 - bw_global_score_cond1 + + global_differences[header] = bw_global_difference + + cond1_array.append(bw_global_score_cond1) + cond2_array.append(bw_global_score_cond2) + + differences_array.append(bw_global_difference) + + bw_cond1.close() + bw_cond2.close() + + mu = np.mean(differences_array) + std = np.std(differences_array, ddof = 1) + + mu_cond1 = np.mean(cond1_array) + + mu_cond2 = np.mean(cond2_array) + + cond1_name = get_name_from_path(condition1) + cond2_name = get_name_from_path(condition2) + + return mu, std + +def is_fasta(check_fasta): + if not os.path.isfile(check_fasta): + #logger.info('there is no file with genome, the exit is forced') + print('there is no file with genome, the exit is forced') + sys.exit() + else: + # modified code from https://stackoverflow.com/questions/44293407/how-can-i-check-whether-a-given-file-is-fasta + with open(check_fasta, "r") as handle: + fasta = SeqIO.parse(handle, "fasta") + return any(fasta) # False when `fasta` is empty, i.e. wasn't a FASTA file + +def check_existing_input_files(args): + + if not is_fasta(args.genome): + #logger.info('please make sure the input genome file has a fasta format') + print('please make sure the input genome file has a fasta format') + sys.exit() + if not os.path.isfile(args.condition1) or not os.path.isfile(args.condition2): + #logger.info('please make sure the both files with conditions to compare exist') + print('please make sure the both files with conditions to compare exist') + sys.exit() + if not args.condition1.endswith('.bw') or not args.condition2.endswith('.bw'): + #logger.info('please check if the both conditions files are in bigWig format') + print('please check if the both conditions files are in bigWig format') + sys.exit() + #check if the file with motifs exists + if not os.path.isfile(args.motifs): + #logger.info('there is no file with motifs, the exit is forced') + print('there is no file with motifs, the exit is forced') + sys.exit() + #check if the bed file exists + if not os.path.isfile(args.bed_file): + #logger.info('there is no such bed file ' + args.bed_file + ', the exit is forced') + print('there is no such bed file ' + args.bed_file + ', the exit is forced') + sys.exit() + +def make_bed_dictionary(bed_file): + + bed_dictionary = {} + + with open(bed_file) as read_bed_file: + for bed_line in read_bed_file: + bed_line_array = re.split(r'\t', bed_line.rstrip('\n')) + if bed_line_array[1].isdigit() and bed_line_array[2].isdigit() and int(bed_line_array[1]) <= int(bed_line_array[2]): #in the real bedfile the second column is a start position, and the third column is an end position, so we are checking if these are integers and if the start position is smaller than the end one + key = bed_line_array[0] + ":" + bed_line_array[1] + "-" + bed_line_array[2] + value = [] + for i in range(3, len(bed_line_array)): + value.append(bed_line_array[i]) + + bed_dictionary[key] = value + else: #this is not a bed file, force exit + logger.info('please make sure the input bed file has a right format, the problem occured on the line ' + bed_line) + sys.exit() + + read_bed_file.close() + + return bed_dictionary + +def find_window(bed_file): + + #chromosom = 1 #start with the first chromosom + window_length = 0 + + with open(bed_file) as read_bed_file: + for bed_line in read_bed_file: + bed_line_array = re.split(r'\t', bed_line.rstrip('\n')) + if bed_line_array[1].isdigit() and bed_line_array[2].isdigit() and int(bed_line_array[1]) <= int(bed_line_array[2]): #in the real bedfile the second column is a start position, and the third column is an end position, so we are checking if these are integers and if the start position is smaller than the end one + #if chromosom == int(bed_line_array[0]): + peak_len = int(bed_line_array[2]) - int(bed_line_array[1]) + if peak_len > window_length: + window_length = peak_len + + print(window_length) + +def find_peaks_from_bw(bed_dictionary, bw_file): + + footprint_count = 1 + + bw_open = pyBigWig.open(bw_file) + + for header in bed_dictionary: + header_splitted = re.split(r':', header) + chromosom = header_splitted[0] + positions = re.split(r'-', header_splitted[-1]) + + scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, int(positions[0]), int(positions[1]))))) #save the scores to an array + + bw_peak_background = np.mean(scores_in_peak) #find the mean of all scores within one peak + + all_footprints = {} + check_position = 0 + + for i in range(len(scores_in_peak)): + position = i + 1 #calculate the relative position for a score + score = scores_in_peak[i] #extract one score from the list + if score >= bw_peak_background: + if position != (check_position + 1): + print() + print("new footprint ", footprint_count) + + start_pos = position #save current position as start for this footprint <------------------------------ bebe + footprint_name = "footprint_" + str(footprint_count) + all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': start_pos, 'end': "todo"} #<-------------------------- bebe + + footprint_count += 1 + check_position = position + #save the position where this score is and start to write a footprint + #footprint[position] = score + #print(position, footprint[position]) + + check_position = position + + #print(footprint) + print(all_footprints) + +def main(): + + start = time.time() + + peaks_bed_file = "./small_peaks.bed" + #peaks_bed_file = "./control_peaks.bed" + #find_window(peaks_bed_file) + + #bed_dictionary = make_bed_dictionary(peaks_bed_file) + bed_dictionary = {} + bed_dictionary["chr1:3062743-3063132"] = ["control1"] + + bw_file = "./control_footprints.bw" + + find_peaks_from_bw(bed_dictionary, bw_file) + + + #args = parse_args() + + #check_existing_input_files(args) + #check if there is an existing directory that user gave as input, otherwise create this directory from the path provided from the user + #check_directory(args.output_directory) + + #fh = logging.FileHandler(os.path.join(args.output_directory, "call_peaks_log.txt")) + #fh.setLevel(logging.INFO) + #fh.setFormatter(formatter) + #logger.addHandler(fh) + + #ch = logging.StreamHandler() + #ch.setLevel(logging.INFO) + #ch.setFormatter(formatter) + #logger.addHandler(ch) + + #if user do not want to see the information about the status of jobs, remove the handler, that writes to the terminal + #if args.silent: + # logger.removeHandler(ch) + + #logger.info("call_peaks.py was called using these parameters:") + #logger.info(vars(args)) + + #blablablaaaa + + #logger.info("call_peaks needed %s seconds to generate the output" % (time.time() - start)) + + for handler in logger.handlers: + handler.close() + logger.removeFilter(handler) + +if __name__ == "__main__": + main() \ No newline at end of file From 400895a01dc83bea66de3fe9928f5f7411079426 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 10:54:01 +0100 Subject: [PATCH 004/206] test commit --- call_peaks.py | 1 + 1 file changed, 1 insertion(+) diff --git a/call_peaks.py b/call_peaks.py index 10d4185..85f923c 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -312,6 +312,7 @@ def main(): find_peaks_from_bw(bed_dictionary, bw_file) + test #args = parse_args() From 22c4b90f926618adeed0e6f4dd6d2cc49c4cb5e9 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 10:59:24 +0100 Subject: [PATCH 005/206] deleting functions that i don't need --- call_peaks.py | 163 -------------------------------------------------- 1 file changed, 163 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 85f923c..ab04fbc 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -53,169 +53,8 @@ def parse_args(): def check_directory(directory): if not os.path.exists(directory): os.makedirs(directory) - #logger.info('a new directory ' + directory + ' was created') print('a new directory ' + directory + ' was created') -#if there are chars that are not allowed, they will be replaced with '_', to the possibly invalid names there will be added '_' at the beginning of the name -def check_name(name_to_test): - badchars= re.compile(r'[^A-Za-z0-9_. ]+|^\.|\.$|^ | $|^$') - badnames= re.compile(r'(aux|com[1-9]|con|lpt[1-9]|prn)(\.|$)') - - #replace all the chars that are not allowed with '_' - name = badchars.sub('_', name_to_test) - - #check for the reserved by the os names - if badnames.match(name): - name = '_' + name - return name - -#check if the bw score is already saved, if so check if it is bigger than the new one -def save_bw_score(key_for_bed_dict, matches_dict, bw_score, moods_score, which_score): - - if np.isnan(bw_score): bw_score = 0.0 - - #bw_score = moods_score * bw_score #apply moods score as well - - if key_for_bed_dict in matches_dict: - - if which_score == "mean": - #save the mean of both scores - matches_dict[key_for_bed_dict] = np.mean([matches_dict[key_for_bed_dict], bw_score]) - - elif which_score == "greater": - #save the biggest of scores - if matches_dict[key_for_bed_dict] < bw_score: - matches_dict[key_for_bed_dict] = bw_score - - else: - matches_dict[key_for_bed_dict] = bw_score - - return matches_dict - -def remove_file(file): - if os.path.isfile(file): - os.remove(file) - -def clean_directory(cleans, output_directory, motif): - - for clean in cleans: - if clean == 'all' or clean == 'cut_motifs': - remove_file(motif) - #the output_merge.fa will be deleted after processing of the multiprocessing - -def tool_make_output(motif, genome, output_directory, cleans, p_value, bed_dictionary, moods_bg, condition1, condition2, global_mean, global_std, which_score): - - standard_moods_bg = 0.25, 0.25, 0.25, 0.25 - - control_dict = {} - overexpression_dict = {} - - differences = [] - control_dict, overexpression_dict, differences = call_moods(motif, genome, output_directory, p_value, standard_moods_bg, condition2, condition1, control_dict, overexpression_dict, differences, which_score) - - #make arrays of the dictionaries - control_array = [] - overexpression_array = [] - - for key in control_dict: - control_array.append(control_dict[key]) - overexpression_array.append(overexpression_dict[key]) - - motif_name = motif.replace(output_directory, '') - motif_name = motif_name.replace('/', '') - - #make the wilcoxon signed-rank test - my_wilcoxon_pvalue, direction, differences, differences_normalized, motif_std = my_wilcoxon(condition2, condition1, control_array, overexpression_array, global_mean, global_std, motif_name, correction = False) - - clean_directory(cleans, output_directory, motif) - - return my_wilcoxon_pvalue, direction, differences, differences_normalized, motif_std - -def make_name_from_path(full_path, output_directory, ending): - return os.path.join(output_directory, get_name_from_path(full_path) + ending) - -def get_name_from_path(full_path): - return os.path.splitext(os.path.basename(full_path))[0] - -def compute_differences(bed_dictionary, condition1, condition2): - logger.info("the mean and standard deviation for the differences in peaks will be count now") - - bw_cond1 = pyBigWig.open(condition1) - bw_cond2 = pyBigWig.open(condition2) - - global_differences = {} #dict - differences_array = [] #to compute the mean at the end - cond1_array = [] - cond2_array = [] - - for header in bed_dictionary: - header_splitted = re.split(r':', header) - chromosom = header_splitted[0] - positions = re.split(r'-', header_splitted[-1]) - - #compute the background difference for this peak - bw_global_score_cond1 = np.mean(np.nan_to_num(np.array(list(bw_cond1.values(chromosom, int(positions[0]), int(positions[1])))))) - bw_global_score_cond2 = np.mean(np.nan_to_num(np.array(list(bw_cond2.values(chromosom, int(positions[0]), int(positions[1])))))) - bw_global_difference = bw_global_score_cond2 - bw_global_score_cond1 - - global_differences[header] = bw_global_difference - - cond1_array.append(bw_global_score_cond1) - cond2_array.append(bw_global_score_cond2) - - differences_array.append(bw_global_difference) - - bw_cond1.close() - bw_cond2.close() - - mu = np.mean(differences_array) - std = np.std(differences_array, ddof = 1) - - mu_cond1 = np.mean(cond1_array) - - mu_cond2 = np.mean(cond2_array) - - cond1_name = get_name_from_path(condition1) - cond2_name = get_name_from_path(condition2) - - return mu, std - -def is_fasta(check_fasta): - if not os.path.isfile(check_fasta): - #logger.info('there is no file with genome, the exit is forced') - print('there is no file with genome, the exit is forced') - sys.exit() - else: - # modified code from https://stackoverflow.com/questions/44293407/how-can-i-check-whether-a-given-file-is-fasta - with open(check_fasta, "r") as handle: - fasta = SeqIO.parse(handle, "fasta") - return any(fasta) # False when `fasta` is empty, i.e. wasn't a FASTA file - -def check_existing_input_files(args): - - if not is_fasta(args.genome): - #logger.info('please make sure the input genome file has a fasta format') - print('please make sure the input genome file has a fasta format') - sys.exit() - if not os.path.isfile(args.condition1) or not os.path.isfile(args.condition2): - #logger.info('please make sure the both files with conditions to compare exist') - print('please make sure the both files with conditions to compare exist') - sys.exit() - if not args.condition1.endswith('.bw') or not args.condition2.endswith('.bw'): - #logger.info('please check if the both conditions files are in bigWig format') - print('please check if the both conditions files are in bigWig format') - sys.exit() - #check if the file with motifs exists - if not os.path.isfile(args.motifs): - #logger.info('there is no file with motifs, the exit is forced') - print('there is no file with motifs, the exit is forced') - sys.exit() - #check if the bed file exists - if not os.path.isfile(args.bed_file): - #logger.info('there is no such bed file ' + args.bed_file + ', the exit is forced') - print('there is no such bed file ' + args.bed_file + ', the exit is forced') - sys.exit() - def make_bed_dictionary(bed_file): bed_dictionary = {} @@ -312,8 +151,6 @@ def main(): find_peaks_from_bw(bed_dictionary, bw_file) - test - #args = parse_args() #check_existing_input_files(args) From 210bddac0ca6bb79d854686ecf890ef6f564447f Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 11:45:34 +0100 Subject: [PATCH 006/206] saving the footprint before starting the new one --- call_peaks.py | 65 +++++++++++++++++++++++++++++++++------------------ 1 file changed, 42 insertions(+), 23 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index ab04fbc..f2defb2 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -96,6 +96,7 @@ def find_window(bed_file): def find_peaks_from_bw(bed_dictionary, bw_file): footprint_count = 1 + all_footprints = {} bw_open = pyBigWig.open(bw_file) @@ -108,49 +109,56 @@ def find_peaks_from_bw(bed_dictionary, bw_file): bw_peak_background = np.mean(scores_in_peak) #find the mean of all scores within one peak - all_footprints = {} - check_position = 0 + check_position = 0 #for the whole peak + footprint_start = 0 #for each footprint + footprint_scores = [] #for each footprint for i in range(len(scores_in_peak)): position = i + 1 #calculate the relative position for a score score = scores_in_peak[i] #extract one score from the list if score >= bw_peak_background: - if position != (check_position + 1): - print() - print("new footprint ", footprint_count) + if position != (check_position + 1): #if this position is not the next with the last position we have checked + #save the last footprint + if check_position != 0: #if this is not the start of the first footprint within this peak - start_pos = position #save current position as start for this footprint <------------------------------ bebe - footprint_name = "footprint_" + str(footprint_count) - all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': start_pos, 'end': "todo"} #<-------------------------- bebe + print("i save the footprint!") + footprint_name = "footprint_" + str(footprint_count) + all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': "todo"} #, 'scores': footprint_scores} #<-------------------------- bebe + footprint_count += 1 - footprint_count += 1 + #start a new footprint + footprint_start = position + footprint_scores = [] + + print() + print("new footprint ", footprint_count) + check_position = position + #else: #continue to write the footprint + #save the position where this score is and start to write a footprint #footprint[position] = score #print(position, footprint[position]) + footprint_scores.append(score) #save the current score check_position = position + print("i save the footprint!") + footprint_name = "footprint_" + str(footprint_count) + all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': "todo"} #, 'scores': footprint_scores} #<-------------------------- bebe + footprint_count += 1 + #print(footprint) + all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['start']), reverse = False) print(all_footprints) + def main(): start = time.time() - peaks_bed_file = "./small_peaks.bed" - #peaks_bed_file = "./control_peaks.bed" - #find_window(peaks_bed_file) - - #bed_dictionary = make_bed_dictionary(peaks_bed_file) - bed_dictionary = {} - bed_dictionary["chr1:3062743-3063132"] = ["control1"] - - bw_file = "./control_footprints.bw" - - find_peaks_from_bw(bed_dictionary, bw_file) - #args = parse_args() #check_existing_input_files(args) @@ -174,7 +182,18 @@ def main(): #logger.info("call_peaks.py was called using these parameters:") #logger.info(vars(args)) - #blablablaaaa + peaks_bed_file = "./small_peaks.bed" + #peaks_bed_file = "./control_peaks.bed" + #find_window(peaks_bed_file) + + #bed_dictionary = make_bed_dictionary(peaks_bed_file) + bed_dictionary = {} + bed_dictionary["chr1:3062743-3063132"] = ["control1"] + + bw_file = "./control_footprints.bw" + + find_peaks_from_bw(bed_dictionary, bw_file) + #logger.info("call_peaks needed %s seconds to generate the output" % (time.time() - start)) From 54a5914ea5f4238ef875ea71079696a44204b655 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 13:19:09 +0100 Subject: [PATCH 007/206] background changing to mean + 10%, the score for a footprint is a mean of all scores in this footprint --- call_peaks.py | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index f2defb2..ba425d9 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -108,9 +108,11 @@ def find_peaks_from_bw(bed_dictionary, bw_file): scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, int(positions[0]), int(positions[1]))))) #save the scores to an array bw_peak_background = np.mean(scores_in_peak) #find the mean of all scores within one peak + part = bw_peak_background/10 #10 procent of the background + bw_peak_background = bw_peak_background + part check_position = 0 #for the whole peak - footprint_start = 0 #for each footprint + footprint_start = 1 #for each footprint footprint_scores = [] #for each footprint for i in range(len(scores_in_peak)): @@ -120,11 +122,12 @@ def find_peaks_from_bw(bed_dictionary, bw_file): if position != (check_position + 1): #if this position is not the next with the last position we have checked #save the last footprint if check_position != 0: #if this is not the start of the first footprint within this peak - - print("i save the footprint!") + + print("i save the footprint nr " + str(footprint_count) + "!") footprint_name = "footprint_" + str(footprint_count) + footprint_score = np.mean(footprint_scores) all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': "todo"} #, 'scores': footprint_scores} #<-------------------------- bebe + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score} footprint_count += 1 #start a new footprint @@ -144,10 +147,11 @@ def find_peaks_from_bw(bed_dictionary, bw_file): footprint_scores.append(score) #save the current score check_position = position - print("i save the footprint!") + print("i save the footprint nr " + str(footprint_count) + "!") footprint_name = "footprint_" + str(footprint_count) + footprint_score = np.mean(footprint_scores) all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': "todo"} #, 'scores': footprint_scores} #<-------------------------- bebe + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score} footprint_count += 1 #print(footprint) @@ -155,6 +159,7 @@ def find_peaks_from_bw(bed_dictionary, bw_file): print(all_footprints) + def main(): start = time.time() From c4f5bf3db106317727707be6732ee57cabd010f1 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 14:06:21 +0100 Subject: [PATCH 008/206] calculating the position with max score as the position in the middle of first and last positions with max score --- call_peaks.py | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index ba425d9..65295b0 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -95,6 +95,7 @@ def find_window(bed_file): def find_peaks_from_bw(bed_dictionary, bw_file): + footprint_count = 1 all_footprints = {} @@ -111,6 +112,9 @@ def find_peaks_from_bw(bed_dictionary, bw_file): part = bw_peak_background/10 #10 procent of the background bw_peak_background = bw_peak_background + part + print(bw_peak_background) + print() + check_position = 0 #for the whole peak footprint_start = 1 #for each footprint footprint_scores = [] #for each footprint @@ -125,9 +129,26 @@ def find_peaks_from_bw(bed_dictionary, bw_file): print("i save the footprint nr " + str(footprint_count) + "!") footprint_name = "footprint_" + str(footprint_count) + + first_max_pos = footprint_scores.index(max(footprint_scores)) + last_max_pos = first_max_pos #assume that there is only one pos with max score + + #find the region with the highest score + for j in range(first_max_pos, len(footprint_scores)): + if footprint_scores[j] < first_max_pos: + last_max_pos = j + else: + last_max_pos = len(footprint_scores) + + if first_max_pos != last_max_pos: + #find a pos in the middle of these both + max_pos = int((last_max_pos - first_max_pos) / 2) + else: + max_pos = first_max_pos + footprint_score = np.mean(footprint_scores) all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score} + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bed_dictionary[header], 'max_pos': max_pos} footprint_count += 1 #start a new footprint @@ -138,11 +159,8 @@ def find_peaks_from_bw(bed_dictionary, bw_file): print("new footprint ", footprint_count) check_position = position - #else: #continue to write the footprint - #save the position where this score is and start to write a footprint - #footprint[position] = score - #print(position, footprint[position]) + footprint_scores.append(score) #save the current score check_position = position @@ -151,13 +169,14 @@ def find_peaks_from_bw(bed_dictionary, bw_file): footprint_name = "footprint_" + str(footprint_count) footprint_score = np.mean(footprint_scores) all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score} + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': check_position - footprint_start, 'bonus': bed_dictionary[header]} footprint_count += 1 - #print(footprint) - all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['start']), reverse = False) + all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['start']), reverse = False) + print(all_footprints) + return all_footprints def main(): From b09d23c1f24a8c62f9a44f62e6bf9e6b6e5eed48 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 14:18:55 +0100 Subject: [PATCH 009/206] make save_footprint as a function on its own --- call_peaks.py | 69 ++++++++++++++++++++++----------------------------- 1 file changed, 29 insertions(+), 40 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 65295b0..1effc5b 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -93,8 +93,34 @@ def find_window(bed_file): print(window_length) -def find_peaks_from_bw(bed_dictionary, bw_file): +def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bonus_info_from_bed): + + footprint_name = "footprint_" + str(footprint_count) + + first_max_pos = footprint_scores.index(max(footprint_scores)) + last_max_pos = first_max_pos #assume that there is only one pos with max score + + #find the region with the highest score + for j in range(first_max_pos, len(footprint_scores)): + if footprint_scores[j] < first_max_pos: + last_max_pos = j + else: + last_max_pos = len(footprint_scores) + if first_max_pos != last_max_pos: + #find a pos in the middle of these both + max_pos = int((last_max_pos - first_max_pos) / 2) + else: + max_pos = first_max_pos + + footprint_score = np.mean(footprint_scores) + all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} + footprint_count += 1 + + return footprint_count, all_footprints + +def find_peaks_from_bw(bed_dictionary, bw_file): footprint_count = 1 all_footprints = {} @@ -112,9 +138,6 @@ def find_peaks_from_bw(bed_dictionary, bw_file): part = bw_peak_background/10 #10 procent of the background bw_peak_background = bw_peak_background + part - print(bw_peak_background) - print() - check_position = 0 #for the whole peak footprint_start = 1 #for each footprint footprint_scores = [] #for each footprint @@ -127,55 +150,21 @@ def find_peaks_from_bw(bed_dictionary, bw_file): #save the last footprint if check_position != 0: #if this is not the start of the first footprint within this peak - print("i save the footprint nr " + str(footprint_count) + "!") - footprint_name = "footprint_" + str(footprint_count) - - first_max_pos = footprint_scores.index(max(footprint_scores)) - last_max_pos = first_max_pos #assume that there is only one pos with max score - - #find the region with the highest score - for j in range(first_max_pos, len(footprint_scores)): - if footprint_scores[j] < first_max_pos: - last_max_pos = j - else: - last_max_pos = len(footprint_scores) - - if first_max_pos != last_max_pos: - #find a pos in the middle of these both - max_pos = int((last_max_pos - first_max_pos) / 2) - else: - max_pos = first_max_pos - - footprint_score = np.mean(footprint_scores) - all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bed_dictionary[header], 'max_pos': max_pos} - footprint_count += 1 + footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bed_dictionary[header]) #start a new footprint footprint_start = position footprint_scores = [] - - print() - print("new footprint ", footprint_count) check_position = position - - footprint_scores.append(score) #save the current score check_position = position - print("i save the footprint nr " + str(footprint_count) + "!") - footprint_name = "footprint_" + str(footprint_count) - footprint_score = np.mean(footprint_scores) - all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': check_position - footprint_start, 'bonus': bed_dictionary[header]} - footprint_count += 1 + footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bed_dictionary[header]) all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['start']), reverse = False) - print(all_footprints) - return all_footprints From 362cc548c2e48780645595d2e270824f6b6ef435 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 14:43:17 +0100 Subject: [PATCH 010/206] writing to bed file --- call_peaks.py | 43 +++++++++++++++++++++++++++++++------------ 1 file changed, 31 insertions(+), 12 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 1effc5b..13ae9f5 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -166,12 +166,42 @@ def find_peaks_from_bw(bed_dictionary, bw_file): all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['start']), reverse = False) return all_footprints + +def write_to_bed_file(all_footprints): + output_file_name = "footprints.bed" #save in the working directory + + header = ["#chr", "start", "end", "name", "len", "score", "max_pos", "bonus_info"] #a header to know what is in the columns + + output_file = open(output_file_name, 'w') #open a file to write + + output_file.write('\t'.join(header) + '\n') #write the header + + for footprint in all_footprints: + output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(footprint[1]['len']), str(footprint[1]['score']), str(footprint[1]['max_pos'])]) + '\n') + + output_file.close() def main(): start = time.time() + peaks_bed_file = "./small_peaks.bed" + #peaks_bed_file = "./control_peaks.bed" + #find_window(peaks_bed_file) + + #bed_dictionary = make_bed_dictionary(peaks_bed_file) + bed_dictionary = {} + bed_dictionary["chr1:3062743-3063132"] = ["control_1"] + #bed_dictionary["chr1:3343546-3344520"] = ["control_2"] + #bed_dictionary["chr1:3062810-3063132"] = ["control1"] #the 0.position has already a score bigger than the background + + + bw_file = "./control_footprints.bw" + + all_footprints = find_peaks_from_bw(bed_dictionary, bw_file) + write_to_bed_file(all_footprints) + #args = parse_args() #check_existing_input_files(args) @@ -195,18 +225,7 @@ def main(): #logger.info("call_peaks.py was called using these parameters:") #logger.info(vars(args)) - peaks_bed_file = "./small_peaks.bed" - #peaks_bed_file = "./control_peaks.bed" - #find_window(peaks_bed_file) - - #bed_dictionary = make_bed_dictionary(peaks_bed_file) - bed_dictionary = {} - bed_dictionary["chr1:3062743-3063132"] = ["control1"] - - bw_file = "./control_footprints.bw" - - find_peaks_from_bw(bed_dictionary, bw_file) - + #blablablaaaa #logger.info("call_peaks needed %s seconds to generate the output" % (time.time() - start)) From b061f6153a52e132717136350ede169eb8f7abd6 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 14:46:32 +0100 Subject: [PATCH 011/206] adding the bonus information from the original bed file to the output footprints.bed --- call_peaks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/call_peaks.py b/call_peaks.py index 13ae9f5..59e58a7 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -177,7 +177,7 @@ def write_to_bed_file(all_footprints): output_file.write('\t'.join(header) + '\n') #write the header for footprint in all_footprints: - output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(footprint[1]['len']), str(footprint[1]['score']), str(footprint[1]['max_pos'])]) + '\n') + output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(footprint[1]['len']), str(footprint[1]['score']), str(footprint[1]['max_pos']), '\t'.join(footprint[1]['bonus'])]) + '\n') output_file.close() From 8c2520094c2bc504d2cad480eb0c6080e3fddac3 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 30 Oct 2018 15:45:16 +0100 Subject: [PATCH 012/206] changing to the actual start and end position and not the relative ones within a peak --- call_peaks.py | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 59e58a7..d963ae4 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -150,7 +150,7 @@ def find_peaks_from_bw(bed_dictionary, bw_file): #save the last footprint if check_position != 0: #if this is not the start of the first footprint within this peak - footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bed_dictionary[header]) + footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + int(positions[0]), check_position + int(positions[0]), bed_dictionary[header]) #start a new footprint footprint_start = position @@ -161,23 +161,23 @@ def find_peaks_from_bw(bed_dictionary, bw_file): footprint_scores.append(score) #save the current score check_position = position - footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bed_dictionary[header]) + footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + int(positions[0]), check_position + int(positions[0]), bed_dictionary[header]) - all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['start']), reverse = False) + all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['chromosom'], x[1]['start']), reverse = False) + + return all_footprints - return all_footprints - def write_to_bed_file(all_footprints): output_file_name = "footprints.bed" #save in the working directory - header = ["#chr", "start", "end", "name", "len", "score", "max_pos", "bonus_info"] #a header to know what is in the columns + header = ["#chr", "start", "end", "name", "score", "len", "max_pos", "bonus_info"] #a header to know what is in the columns output_file = open(output_file_name, 'w') #open a file to write output_file.write('\t'.join(header) + '\n') #write the header for footprint in all_footprints: - output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(footprint[1]['len']), str(footprint[1]['score']), str(footprint[1]['max_pos']), '\t'.join(footprint[1]['bonus'])]) + '\n') + output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(footprint[1]['score']), str(footprint[1]['len']), str(footprint[1]['max_pos']), '\t'.join(footprint[1]['bonus'])]) + '\n') output_file.close() @@ -186,13 +186,13 @@ def main(): start = time.time() - peaks_bed_file = "./small_peaks.bed" - #peaks_bed_file = "./control_peaks.bed" + #peaks_bed_file = "./small_peaks.bed" + peaks_bed_file = "./control_peaks.bed" #find_window(peaks_bed_file) - #bed_dictionary = make_bed_dictionary(peaks_bed_file) - bed_dictionary = {} - bed_dictionary["chr1:3062743-3063132"] = ["control_1"] + bed_dictionary = make_bed_dictionary(peaks_bed_file) + #bed_dictionary = {} + #bed_dictionary["chr1:3062743-3063132"] = ["control_1"] #bed_dictionary["chr1:3343546-3344520"] = ["control_2"] #bed_dictionary["chr1:3062810-3063132"] = ["control1"] #the 0.position has already a score bigger than the background From 36974c2ad61cbd08e0bd6330d208c874828d3823 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 1 Nov 2018 12:00:17 +0100 Subject: [PATCH 013/206] Basic Nextflow structure --- pipeline.nf | 224 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 224 insertions(+) create mode 100644 pipeline.nf diff --git a/pipeline.nf b/pipeline.nf new file mode 100644 index 0000000..c13e41f --- /dev/null +++ b/pipeline.nf @@ -0,0 +1,224 @@ +//!/usr/bin/env nextflow + +Channel.fromPath(params.input).map {it -> [it.simpleName, it]}.set {bigwig_input} +Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan} +Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} + +process footprint_extraction { + + tag{name} + + input: + set name, file (bigWig) from bigwig_input + + output: + set name, file ('*.bed') into bed_for_overlapp_with_TFBS + + script: + """ + """ +} + + +process extract_known_TFBS { + + input: + file (fasta) from fa_overlap + file (db) from db_for_motivscan + + output: + file ('*.bed') into known_TFBS_for_overlap + + script: + """ + """ +} + + +process overlap_with_known_TFBS { + + input: + file (TFBS) from known_TFBS_for_overlap + + output: + file ('*.FASTA') into FASTA_for_clustering + + script: + """ + """ +} + + + +process clustering { + + input: + file (faste) from FASTA_for_clustering + + output: + set name, file ('*.bed') into bed_for_motif_esitmation + + script: + """ + """ +} + + +process bed_to_clustered_fasta { + + tag{name} + publishDir '/mnt/agnerds/Rene.Wiegandt/10_Master/tmp/', mode: 'copy' + + input: + set name, file (bed) from bed_for_motif_esitmation + + output: + file ('*.FASTA') into fasta_for_glam2 + + script: + """ + Rscript ${path_bin}/bed_to_fasta.R ${bed} ${name} + """ +} + + +fasta_for_glam2 = fasta_for_glam2.flatten().map {it -> [it.simpleName, it]} + + +process glam2 { + + tag{name} + + input: + set name, file (fasta) from fasta_for_glam2 + + output: + set name, file('*.meme') into meme_for_tomtom, meme_for_filter + + script: + """ + glam2 n ${fasta} -O . + """ +} + + +process tomtom { + + tag{name} + + publishDir '/mnt/agnerds/Rene.Wiegandt/10_Master/tmp/', mode: 'copy' + + input: + set name, file (meme) from meme_for_tomtom + + output: + set name, file ('*.tsv') into tsv_for_filter + + script: + """ + tomtom ${meme} ${jaspar_db} -thresh 0.0000000000000001 -mi 1 -text | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv + """ +} + + +for_filter = meme_for_filter.join( tsv_for_filter ) +for_filter + .filter { name, meme, tsv -> + long count = tsv.readLines().size() + count <= 1 + } + .into { meme_forscan; check } + + +process check_for_unknown_motifs { + echo true + + input: + val x from check.ifEmpty('EMPTY') + + when: + x == 'EMPTY' + + """ + echo '>>> STOPPED: No unknown Motifs were found.' + """ + +} + + +meme_for_scan.combine(fa_scan).set {files_for_genome_scan} + + +process genome_scan { + + input: + set file(meme), file(fasta) from files_for_genome_scan + + output: + file ('.bed') into bed_for_uropa, bed_for_cluster_quality + + script: + """ + """ +} + + +process cluster_quality { + + input: + file (bed) from bed_for_cluster_quality + + output: + file ('*.bed') into bed_for_final_filter + + script: + """ + """ +} + + +process create_GTF { + + output: + file ('*.gtf') into gtf_for_uropa + + script: + """ + """ +} + + +process create_UROPA_config { + + input: + + output: + file ('uropa.config') into uropa_config + +} + + +process UROPA { + + input: + file (config) from uropa_config + + output: + set file ("*_allhits.txt"), file ("*_finalhits.txt") into uropa_for_filter + + script: + """ + """ +} + + +process filter { + + input: + + output: + + script: + """ + """ +} \ No newline at end of file From 0dbdf5bebaabc14bb526713f358b8b0ed1a9d1eb Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 1 Nov 2018 12:12:40 +0100 Subject: [PATCH 014/206] fixed db_channel for tomtom --- pipeline.nf | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index c13e41f..a014565 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -109,7 +109,7 @@ process tomtom { publishDir '/mnt/agnerds/Rene.Wiegandt/10_Master/tmp/', mode: 'copy' input: - set name, file (meme) from meme_for_tomtom + set name, file (meme), file (jaspar_db) from meme_for_tomtom.combine(db_for_tomtom) output: set name, file ('*.tsv') into tsv_for_filter @@ -195,6 +195,9 @@ process create_UROPA_config { output: file ('uropa.config') into uropa_config + script: + """ + """ } @@ -221,4 +224,4 @@ process filter { script: """ """ -} \ No newline at end of file +} From 2d42086a2d445a6a1a8563240facd8c4313248a8 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Thu, 1 Nov 2018 12:50:02 +0100 Subject: [PATCH 015/206] adding a sorting function after the bed file was written to present it nice for the user --- call_peaks.py | 169 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 168 insertions(+), 1 deletion(-) diff --git a/call_peaks.py b/call_peaks.py index d963ae4..e38cfd1 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -53,8 +53,169 @@ def parse_args(): def check_directory(directory): if not os.path.exists(directory): os.makedirs(directory) + #logger.info('a new directory ' + directory + ' was created') print('a new directory ' + directory + ' was created') +#if there are chars that are not allowed, they will be replaced with '_', to the possibly invalid names there will be added '_' at the beginning of the name +def check_name(name_to_test): + badchars= re.compile(r'[^A-Za-z0-9_. ]+|^\.|\.$|^ | $|^$') + badnames= re.compile(r'(aux|com[1-9]|con|lpt[1-9]|prn)(\.|$)') + + #replace all the chars that are not allowed with '_' + name = badchars.sub('_', name_to_test) + + #check for the reserved by the os names + if badnames.match(name): + name = '_' + name + return name + +#check if the bw score is already saved, if so check if it is bigger than the new one +def save_bw_score(key_for_bed_dict, matches_dict, bw_score, moods_score, which_score): + + if np.isnan(bw_score): bw_score = 0.0 + + #bw_score = moods_score * bw_score #apply moods score as well + + if key_for_bed_dict in matches_dict: + + if which_score == "mean": + #save the mean of both scores + matches_dict[key_for_bed_dict] = np.mean([matches_dict[key_for_bed_dict], bw_score]) + + elif which_score == "greater": + #save the biggest of scores + if matches_dict[key_for_bed_dict] < bw_score: + matches_dict[key_for_bed_dict] = bw_score + + else: + matches_dict[key_for_bed_dict] = bw_score + + return matches_dict + +def remove_file(file): + if os.path.isfile(file): + os.remove(file) + +def clean_directory(cleans, output_directory, motif): + + for clean in cleans: + if clean == 'all' or clean == 'cut_motifs': + remove_file(motif) + #the output_merge.fa will be deleted after processing of the multiprocessing + +def tool_make_output(motif, genome, output_directory, cleans, p_value, bed_dictionary, moods_bg, condition1, condition2, global_mean, global_std, which_score): + + standard_moods_bg = 0.25, 0.25, 0.25, 0.25 + + control_dict = {} + overexpression_dict = {} + + differences = [] + control_dict, overexpression_dict, differences = call_moods(motif, genome, output_directory, p_value, standard_moods_bg, condition2, condition1, control_dict, overexpression_dict, differences, which_score) + + #make arrays of the dictionaries + control_array = [] + overexpression_array = [] + + for key in control_dict: + control_array.append(control_dict[key]) + overexpression_array.append(overexpression_dict[key]) + + motif_name = motif.replace(output_directory, '') + motif_name = motif_name.replace('/', '') + + #make the wilcoxon signed-rank test + my_wilcoxon_pvalue, direction, differences, differences_normalized, motif_std = my_wilcoxon(condition2, condition1, control_array, overexpression_array, global_mean, global_std, motif_name, correction = False) + + clean_directory(cleans, output_directory, motif) + + return my_wilcoxon_pvalue, direction, differences, differences_normalized, motif_std + +def make_name_from_path(full_path, output_directory, ending): + return os.path.join(output_directory, get_name_from_path(full_path) + ending) + +def get_name_from_path(full_path): + return os.path.splitext(os.path.basename(full_path))[0] + +def compute_differences(bed_dictionary, condition1, condition2): + logger.info("the mean and standard deviation for the differences in peaks will be count now") + + bw_cond1 = pyBigWig.open(condition1) + bw_cond2 = pyBigWig.open(condition2) + + global_differences = {} #dict + differences_array = [] #to compute the mean at the end + cond1_array = [] + cond2_array = [] + + for header in bed_dictionary: + header_splitted = re.split(r':', header) + chromosom = header_splitted[0] + positions = re.split(r'-', header_splitted[-1]) + + #compute the background difference for this peak + bw_global_score_cond1 = np.mean(np.nan_to_num(np.array(list(bw_cond1.values(chromosom, int(positions[0]), int(positions[1])))))) + bw_global_score_cond2 = np.mean(np.nan_to_num(np.array(list(bw_cond2.values(chromosom, int(positions[0]), int(positions[1])))))) + bw_global_difference = bw_global_score_cond2 - bw_global_score_cond1 + + global_differences[header] = bw_global_difference + + cond1_array.append(bw_global_score_cond1) + cond2_array.append(bw_global_score_cond2) + + differences_array.append(bw_global_difference) + + bw_cond1.close() + bw_cond2.close() + + mu = np.mean(differences_array) + std = np.std(differences_array, ddof = 1) + + mu_cond1 = np.mean(cond1_array) + + mu_cond2 = np.mean(cond2_array) + + cond1_name = get_name_from_path(condition1) + cond2_name = get_name_from_path(condition2) + + return mu, std + +def is_fasta(check_fasta): + if not os.path.isfile(check_fasta): + #logger.info('there is no file with genome, the exit is forced') + print('there is no file with genome, the exit is forced') + sys.exit() + else: + # modified code from https://stackoverflow.com/questions/44293407/how-can-i-check-whether-a-given-file-is-fasta + with open(check_fasta, "r") as handle: + fasta = SeqIO.parse(handle, "fasta") + return any(fasta) # False when `fasta` is empty, i.e. wasn't a FASTA file + +def check_existing_input_files(args): + + if not is_fasta(args.genome): + #logger.info('please make sure the input genome file has a fasta format') + print('please make sure the input genome file has a fasta format') + sys.exit() + if not os.path.isfile(args.condition1) or not os.path.isfile(args.condition2): + #logger.info('please make sure the both files with conditions to compare exist') + print('please make sure the both files with conditions to compare exist') + sys.exit() + if not args.condition1.endswith('.bw') or not args.condition2.endswith('.bw'): + #logger.info('please check if the both conditions files are in bigWig format') + print('please check if the both conditions files are in bigWig format') + sys.exit() + #check if the file with motifs exists + if not os.path.isfile(args.motifs): + #logger.info('there is no file with motifs, the exit is forced') + print('there is no file with motifs, the exit is forced') + sys.exit() + #check if the bed file exists + if not os.path.isfile(args.bed_file): + #logger.info('there is no such bed file ' + args.bed_file + ', the exit is forced') + print('there is no such bed file ' + args.bed_file + ', the exit is forced') + sys.exit() + def make_bed_dictionary(bed_file): bed_dictionary = {} @@ -168,7 +329,8 @@ def find_peaks_from_bw(bed_dictionary, bw_file): return all_footprints def write_to_bed_file(all_footprints): - output_file_name = "footprints.bed" #save in the working directory + output_file_name = "footprints_2.bed" #save in the working directory + sorted_output_file_name = "footprints_sorted_2.bed" header = ["#chr", "start", "end", "name", "score", "len", "max_pos", "bonus_info"] #a header to know what is in the columns @@ -181,6 +343,11 @@ def write_to_bed_file(all_footprints): output_file.close() + #sort the bed file + print("sorting") + + os.system("(head -n 2) " + output_file_name + " && tail -n +3 " + output_file_name + " | sort -k1,1V -k2,2n -k3,3n) > " + sorted_output_file_name) + def main(): From 59a08fc537702f0d7e3e721e7c1b9deff2812dce Mon Sep 17 00:00:00 2001 From: anastasiia Date: Thu, 1 Nov 2018 13:17:44 +0100 Subject: [PATCH 016/206] adding of a logger, deleting of the unsorted file after the sorting --- call_peaks.py | 56 ++++++++++++++++++++++++++++----------------------- 1 file changed, 31 insertions(+), 25 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index e38cfd1..7aa8b11 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -37,9 +37,9 @@ def parse_args(): This script produces a file with peaks in .bed format from the file with scores in .bigWig format. '''), epilog='That is what you need to make this script work for you. Enjoy it') - required_arguments = parser.add_argument_group('required arguments') - required_arguments.add_argument('--bigwig', help='a bigWig-file with scores', required=True) - required_arguments.add_argument('--bed', help='provide a file with peaks in .bed format', required=True) + #required_arguments = parser.add_argument_group('required arguments') + #required_arguments.add_argument('--bigwig', help='a bigWig-file with scores', required=True) + #required_arguments.add_argument('--bed', help='provide a file with peaks in .bed format', required=True) #all other arguments are optional parser.add_argument('--output_directory', default='output', const='output', nargs='?', help='output directory, by default ./output/') @@ -218,6 +218,8 @@ def check_existing_input_files(args): def make_bed_dictionary(bed_file): + logger.info('reading of the bed file') + bed_dictionary = {} with open(bed_file) as read_bed_file: @@ -283,6 +285,8 @@ def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, def find_peaks_from_bw(bed_dictionary, bw_file): + logger.info('looking for footprints withing peaks') + footprint_count = 1 all_footprints = {} @@ -329,13 +333,15 @@ def find_peaks_from_bw(bed_dictionary, bw_file): return all_footprints def write_to_bed_file(all_footprints): - output_file_name = "footprints_2.bed" #save in the working directory - sorted_output_file_name = "footprints_sorted_2.bed" + output_file_name = "not_sorted_footprints.bed" #save in the working directory + sorted_output_file_name = "footprints.bed" header = ["#chr", "start", "end", "name", "score", "len", "max_pos", "bonus_info"] #a header to know what is in the columns output_file = open(output_file_name, 'w') #open a file to write + logger.info("print to the output file") + output_file.write('\t'.join(header) + '\n') #write the header for footprint in all_footprints: @@ -344,10 +350,13 @@ def write_to_bed_file(all_footprints): output_file.close() #sort the bed file - print("sorting") + logger.info('sorting the output file') - os.system("(head -n 2) " + output_file_name + " && tail -n +3 " + output_file_name + " | sort -k1,1V -k2,2n -k3,3n) > " + sorted_output_file_name) + os.system("(head -n 2 " + output_file_name + " && tail -n +3 " + output_file_name + " | sort -k1,1V -k2,2n -k3,3n) > " + sorted_output_file_name) + logger.info('remove the non-sorted file') + + remove_file(output_file_name) def main(): @@ -357,42 +366,39 @@ def main(): peaks_bed_file = "./control_peaks.bed" #find_window(peaks_bed_file) - bed_dictionary = make_bed_dictionary(peaks_bed_file) #bed_dictionary = {} #bed_dictionary["chr1:3062743-3063132"] = ["control_1"] #bed_dictionary["chr1:3343546-3344520"] = ["control_2"] #bed_dictionary["chr1:3062810-3063132"] = ["control1"] #the 0.position has already a score bigger than the background - bw_file = "./control_footprints.bw" - all_footprints = find_peaks_from_bw(bed_dictionary, bw_file) - write_to_bed_file(all_footprints) - - #args = parse_args() + args = parse_args() #check_existing_input_files(args) #check if there is an existing directory that user gave as input, otherwise create this directory from the path provided from the user - #check_directory(args.output_directory) + check_directory(args.output_directory) - #fh = logging.FileHandler(os.path.join(args.output_directory, "call_peaks_log.txt")) - #fh.setLevel(logging.INFO) - #fh.setFormatter(formatter) - #logger.addHandler(fh) + fh = logging.FileHandler(os.path.join(args.output_directory, "call_peaks_log.txt")) + fh.setLevel(logging.INFO) + fh.setFormatter(formatter) + logger.addHandler(fh) - #ch = logging.StreamHandler() - #ch.setLevel(logging.INFO) - #ch.setFormatter(formatter) - #logger.addHandler(ch) + ch = logging.StreamHandler() + ch.setLevel(logging.INFO) + ch.setFormatter(formatter) + logger.addHandler(ch) #if user do not want to see the information about the status of jobs, remove the handler, that writes to the terminal - #if args.silent: - # logger.removeHandler(ch) + if args.silent: + logger.removeHandler(ch) #logger.info("call_peaks.py was called using these parameters:") #logger.info(vars(args)) - #blablablaaaa + bed_dictionary = make_bed_dictionary(peaks_bed_file) + all_footprints = find_peaks_from_bw(bed_dictionary, bw_file) + write_to_bed_file(all_footprints) #logger.info("call_peaks needed %s seconds to generate the output" % (time.time() - start)) From b4b972fc6df567ea033e4bf31011d01a3737157e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Mon, 5 Nov 2018 04:22:17 -0500 Subject: [PATCH 017/206] bed_to_fasta update --- bin/bed_to_fasta.R | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/bin/bed_to_fasta.R b/bin/bed_to_fasta.R index f63b06f..6767ab5 100644 --- a/bin/bed_to_fasta.R +++ b/bin/bed_to_fasta.R @@ -1,25 +1,21 @@ -bed <- data.table::data.table(1:10,1:10,c("AAAAAAAAA","CTGAGA","CCCTAGC","GC","AA","ACGTACGTGTCA","GGGCCGCTA","GCA","TTTTTGCA","AAAATCGACGT"),c(1,2,3,1,1,1,2,2,3,3)) - #!/usr/bin/env Rscript # Splitting BED-files depending on their cluster. # The Sequences of each cluster are writen as an FASTA-file. -# @parameter bedInput BED-file with sequences and cluster-id as column -# @parameter out output directory +# @parameter bedInput BED-file with sequences and cluster-id as column"TEs # @parameter prefix prefix for filenames args = commandArgs(trailingOnly = TRUE) - bedInput <- args[1] -out <- args[2] # "G://Rene.Wiegandt/10_Master/" -prefix <- args[3] # "Fasta" +prefix <- args[2] # "Fasta" bed <- data.table::fread(bedInput, header = FALSE, sep = "\t") -clusters <- split(bed, bed$V4, sorted = TRUE, flatten = FALSE) # <---- Spalte mit Cluster +clusters <- split(bed, bed$V3, sorted = TRUE, flatten = FALSE) # <---- Spalte mit Cluster discard <- lapply(1:length(clusters), function(i){ - sequences <- as.list(as.data.frame(clusters[i])[[3]]) # <---- Splate mit Sequenz - outfile <- paste0(out,prefix,"_cluster_",i) - seqinr::write.fasta(sequences = sequences, names = as.data.frame(clusters[i])[[2]], file.out = outfile, as.string = TRUE) # <---- Spalte mit Name + sequences <- as.list(as.data.frame(clusters[i])[[2]]) # <---- Splate mit Sequenz + outfile <- paste0(prefix,"_cluster_",i,".FASTA") + seqinr::write.fasta(sequences = sequences, names = as.data.frame(clusters[i])[[1]] + , file.out = outfile, as.string = TRUE) # <---- Spalte mit Name }) From 82c0c13a0882a4fd61c941c5ca97e825dcacce34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Mon, 5 Nov 2018 09:20:31 -0500 Subject: [PATCH 018/206] motif estimation docu in nf --- pipeline.nf | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index a014565..710f472 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -64,6 +64,7 @@ process clustering { } +// Converting BED-File to one FASTA-File per cluster process bed_to_clustered_fasta { tag{name} @@ -82,9 +83,12 @@ process bed_to_clustered_fasta { } +//flatten list and adding name of file to channel value fasta_for_glam2 = fasta_for_glam2.flatten().map {it -> [it.simpleName, it]} +//Running GLAM2 on FASTA-files. +//Generating Motifs through alignment and scoring best local matches. process glam2 { tag{name} @@ -102,6 +106,8 @@ process glam2 { } +//Running Tomtom on meme-files generated by GLAM2. +//Tomtom searches motifs in databases. process tomtom { tag{name} @@ -116,20 +122,23 @@ process tomtom { script: """ - tomtom ${meme} ${jaspar_db} -thresh 0.0000000000000001 -mi 1 -text | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv + tomtom ${meme} ${jaspar_db} -thresh 0.01 -mi 1 -text | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv """ } +//Joining channels with meme and tsv files. Filter joined channel on linecount. +//Only meme-files which corresponding tsv files have linecount <= 1 are writen to next channel. for_filter = meme_for_filter.join( tsv_for_filter ) for_filter .filter { name, meme, tsv -> long count = tsv.readLines().size() count <= 1 } - .into { meme_forscan; check } + .into { meme_for_scan; check } +//If unknown channel is empty print errormessage process check_for_unknown_motifs { echo true From 14fef9d6aa42758d9bc53cc378e8b1ab5a0ed14f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Mon, 5 Nov 2018 09:57:51 -0500 Subject: [PATCH 019/206] get best motif from meme --- bin/get_best_motif.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 bin/get_best_motif.py diff --git a/bin/get_best_motif.py b/bin/get_best_motif.py new file mode 100644 index 0000000..770c8a8 --- /dev/null +++ b/bin/get_best_motif.py @@ -0,0 +1,23 @@ +# parses arguments using argparse +# @return args list of all parameters +def parse_arguments(): + parser = argparse.ArgumentParser() + parser.add_argument("meme", help="Path to meme file") + parser.add_argument("output", help="") + args = parser.parse_args() + return args + + +def main(): + args = parse_arguments() + out = open(args.output, "w+") + with open(args.meme) as f: + for line in f: + if 'MOTIF 2' in line: + break + out.write(line) + + +if __name__ == "__main__": + import argparse + main() \ No newline at end of file From 5a7b6614250b1379c2ec8c656b7ef8245712669a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 7 Nov 2018 04:21:30 -0500 Subject: [PATCH 020/206] added process to get best motif per meme-file --- pipeline.nf | 39 +++++++++++++++++++++++++++------------ 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 710f472..49adb09 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -7,7 +7,7 @@ Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} process footprint_extraction { tag{name} - + input: set name, file (bigWig) from bigwig_input @@ -21,7 +21,7 @@ process footprint_extraction { process extract_known_TFBS { - + input: file (fasta) from fa_overlap file (db) from db_for_motivscan @@ -36,7 +36,7 @@ process extract_known_TFBS { process overlap_with_known_TFBS { - + input: file (TFBS) from known_TFBS_for_overlap @@ -51,7 +51,7 @@ process overlap_with_known_TFBS { process clustering { - + input: file (faste) from FASTA_for_clustering @@ -155,13 +155,28 @@ process check_for_unknown_motifs { } -meme_for_scan.combine(fa_scan).set {files_for_genome_scan} +process get_best_motif { + + input: + set name, file(meme), file(tsv) from meme_for_scan + + output: + set name, file('*_best.meme') into best_motif + + script: + """ + python ${path_bin}/get_best_motif.py ${meme} ${name}_best.meme + """ +} + + +best_motif.combine(fa_scan).set {files_for_genome_scan} process genome_scan { - + input: - set file(meme), file(fasta) from files_for_genome_scan + set name, file(meme), file(fasta) from files_for_genome_scan output: file ('.bed') into bed_for_uropa, bed_for_cluster_quality @@ -173,7 +188,7 @@ process genome_scan { process cluster_quality { - + input: file (bed) from bed_for_cluster_quality @@ -187,7 +202,7 @@ process cluster_quality { process create_GTF { - + output: file ('*.gtf') into gtf_for_uropa @@ -198,7 +213,7 @@ process create_GTF { process create_UROPA_config { - + input: output: @@ -211,7 +226,7 @@ process create_UROPA_config { process UROPA { - + input: file (config) from uropa_config @@ -225,7 +240,7 @@ process UROPA { process filter { - + input: output: From 603c814f4120e2580b760c698e71558d43107c8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 8 Nov 2018 04:50:05 -0500 Subject: [PATCH 021/206] added uropa config --- uropa.config | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 uropa.config diff --git a/uropa.config b/uropa.config new file mode 100644 index 0000000..3c4a189 --- /dev/null +++ b/uropa.config @@ -0,0 +1,16 @@ +{ +"queries":[ + {"feature":"", + "feature.anchor": "", + "distance": [ , ], + "strand":"", + "direction":"", + "internals":"", + "filter.attribute":"", + "attribute.value":"", + "show.attributes":"" } + ], +"priority": "", +"gtf": "placeholder_gtf", +"bed": "placeholder_bed" +} \ No newline at end of file From 9f4e4809cdb59e43f02e0d1b7caf4f9ab2c8bed6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 8 Nov 2018 04:51:21 -0500 Subject: [PATCH 022/206] added process create_uropa_config --- pipeline.nf | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pipeline.nf b/pipeline.nf index 49adb09..0609bb1 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -3,6 +3,7 @@ Channel.fromPath(params.input).map {it -> [it.simpleName, it]}.set {bigwig_input} Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan} Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} +Channel.fromPath(params.config).set {config} process footprint_extraction { @@ -212,15 +213,23 @@ process create_GTF { } -process create_UROPA_config { +bed_for_final_filter.combine(gtf_for_uropa).set {uropa_in} + + +process create_uropa_config { + + publishDir '/mnt/agnerds/Rene.Wiegandt/10_Master/', mode: 'copy' input: + set val(bed), val(gtf) from uropa_in.toList() + file (conf) from config output: file ('uropa.config') into uropa_config script: """ + sed -- 's/placeholder_gtf/${gtf}/g; s/placeholder_bed/${bed}/g' ${conf} > uropa.config.final """ } From 87bbda0c4cd6ccd1d5507f54e480aa975f13813d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 8 Nov 2018 07:26:59 -0500 Subject: [PATCH 023/206] added scripts for part 1.2 --- bin/compareBed.sh | 183 ++++++++++++++++++++++++++++++++++++++++++++++ bin/maxScore.R | 9 +++ bin/merge.R | 23 ++++++ 3 files changed, 215 insertions(+) create mode 100644 bin/compareBed.sh create mode 100644 bin/maxScore.R create mode 100644 bin/merge.R diff --git a/bin/compareBed.sh b/bin/compareBed.sh new file mode 100644 index 0000000..bcf52fb --- /dev/null +++ b/bin/compareBed.sh @@ -0,0 +1,183 @@ +#!/bin/bash +#data +#motifs +#workdir +#fasta +#min +#max +#output +wrong=() +da=false +mo=false +wo=false +fa=false +mi=false +ma=false +ou=false +he=false + +if [ $# -eq 0 ] +then + he=true +fi + +while [[ $# -gt 0 ]] +do +key="$1" + +case $key in + -d|--data) + data="$2" + da=true + shift + shift + ;; + -m|--motifs) + motifs="$2" + mo=true + shift + shift + ;; + -w|--workdir) + workdir="$2" + wo=true + shift + shift + ;; + -f|--fasta) + fasta="$2" + fa=true + shift + shift + ;; + -min|--min) + min=$2 + mi=true + shift + shift + ;; + -max|--max) + max=$2 + ma=true + shift + shift + ;; + -o|--output) + output="$2" + ou=true + shift + shift + ;; + -h|--help) + help=true + he=true + shift + ;; + *) + wrong+=("$1") + shift + ;; +esac +done + +count=${#wrong[@]} +if [ $count -gt 0 ] +then + for i in ${wrong[@]} + do + echo wrong parameter $i + echo call script without parameters for help or call --help + echo exit + done +exit 1 +fi + +if [ $he == true ] +then + echo "This script utilies bedtools to select new footprints from data." + echo "Therefore the data is compared with known footprint motifs." + echo "The output is a new .bed file with added sequence information." + echo "Required arguments are data and motifs, both in bed-format, and the fasta genome sequences." + echo "If a parameter is chosen, a value must be provided or an error will occur." + echo "--------------------" + echo "usage: compareBed.sh --data \ --motifs \ --fasta \ \[optional_parameter \\] ..." + echo "--------------------" + echo " required parameter:" + echo " -d --data the path to the .bed file of the footprints" + echo " -m --motifs the path to the .bed file of the scanned motifs" + echo " -f --fasta the path to the .fasta file of genome" + echo " " + echo " optional parameter:" + echo " -w --workdir the path to directory where temporary files will be created" + echo " default is a new directory that is created in the current directory" + echo " -min --min minimum size of footprints\; default is 10" + echo " -max --max maximum size of footprints\; default is 60" + echo " -o --output output path/file \; default dir is workdir and filename is newFootprints.bed and newFootprints.bed.fasta" + echo " -h --help shows this help message" +exit 0 +fi + +echo selected parameters +echo ------------------- +echo data: $da \(required\) +echo motifs: $mo \(required\) +echo workdir: $wo +echo fasta: $fa \(required\) +echo min: $mi +echo max: $ma +echo output: $ou +echo help: $he + +if [ $da == false ] || [ $mo == false ] || [ $fa == false ] +then + echo required parameters not given. + echo required are: --data \ --motifs \ --fasta \ + exit 1 +fi + +if [ $wo == false ] +then + if [ ! -d workdir1337 ] + then + mkdir workdir1337 + fi + wo=true + workdir="workdir1337" +fi + +if [ $ou == false ] +then + output="newFootprints.bed" + ou=true +fi + +if [ $mi == false ] +then + min=10 + mi=true +fi + +if [ $ma == false ] +then + max=60 + ma=true +fi +#1. first filter. no overlap vs. overlap +bedtools intersect -v -a $data -b $motifs > "$workdir"/pass1Tr.bed +bedtools intersect -wa -a $data -b $motifs > "$workdir"/pass1Fa.bed + +#2. compute absolut maxscore position +Rscript --vanilla maxScore.R "$workdir"/pass1Fa.bed + +#3. subtract overlapping regions for additional motifs +bedtools subtract -a "$workdir"/pass1Fa.bed -b $motifs > "$workdir"/pass2Tr.bed + +#4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition +Rscript --vanilla merge.R $min $max "$workdir" + +#5. add fasta sequences to bed and create fasta file +bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$workdir"/"$output" +bedtools getfasta -name -fi $fasta -bed "$workdir"/"$output" -fo "$workdir"/"$output".fasta + +#6 clean up +rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed \ No newline at end of file diff --git a/bin/maxScore.R b/bin/maxScore.R new file mode 100644 index 0000000..4ea545b --- /dev/null +++ b/bin/maxScore.R @@ -0,0 +1,9 @@ +#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +args = commandArgs(TRUE) +file = args[1] + +tab = read.table(file, header=FALSE) +colnames(tab) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +tab$maxpos = tab$start + tab$maxpos + +write.table(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') diff --git a/bin/merge.R b/bin/merge.R new file mode 100644 index 0000000..bbe3c9a --- /dev/null +++ b/bin/merge.R @@ -0,0 +1,23 @@ +#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +args=commandArgs(TRUE) +min=as.numeric(args[1]) +max=as.numeric(args[2]) +folder=args[3] +splitted = read.table(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) +colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +p1 = read.table(paste(folder, "/pass1Tr.bed", sep=''), header=FALSE) +colnames(p1) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +p1$maxpos = p1$start + p1$maxpos + +splitted=rbind(splitted, p1) + +splitted=splitted[which(splitted$stop - splitted$start >= min),] +splitted=splitted[which(splitted$stop - splitted$start <= max),] +splitted$id=make.unique(as.character(splitted$id)) +splitted$length=splitted$stop - splitted$start + +splitted=cbind(splitted, containsMaxpos=0) +splitted$containsMaxpos[intersect(which(splitted$start <= splitted$maxpos), which(splitted$stop > splitted$maxpos))] = 1 +splitted$maxpos = splitted$maxpos - splitted$start +write.table(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') + From da7736423dc4cf5effc7797ebcd742ebc5f7b32d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 8 Nov 2018 07:28:05 -0500 Subject: [PATCH 024/206] Update: process overlap_with_known_TFBS --- pipeline.nf | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 0609bb1..83e4736 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -1,7 +1,7 @@ //!/usr/bin/env nextflow Channel.fromPath(params.input).map {it -> [it.simpleName, it]}.set {bigwig_input} -Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan} +Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan; fa_overlap_2} Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} Channel.fromPath(params.config).set {config} @@ -13,14 +13,14 @@ process footprint_extraction { set name, file (bigWig) from bigwig_input output: - set name, file ('*.bed') into bed_for_overlapp_with_TFBS + set name, file ('*.bed') into bed_for_overlap_with_TFBS script: """ """ } - +//Abfrage ob ausgeführt werden muss. process extract_known_TFBS { input: @@ -36,16 +36,20 @@ process extract_known_TFBS { } +bed_for_overlap_with_TFBS.combine(known_TFBS_for_overlap).combine(fa_overlap_2).set {for_overlap} + + process overlap_with_known_TFBS { input: - file (TFBS) from known_TFBS_for_overlap + set file (bed_footprints), file (bed_motifs), file (fasta) from for_overlap output: file ('*.FASTA') into FASTA_for_clustering script: """ + ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${bed_motifs} --fasta ${fasta} -o ${name_placeholder} -min ${params.min_size_fp} -max ${params.max_size_fp} """ } From bce329b8fdeeb327b7d59c58e8189eaa6de89762 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 12 Nov 2018 11:12:20 +0100 Subject: [PATCH 025/206] backup before changing to use a window for search --- call_peaks.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 7aa8b11..f77eaa2 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -283,7 +283,7 @@ def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, return footprint_count, all_footprints -def find_peaks_from_bw(bed_dictionary, bw_file): +def find_peaks_from_bw(bed_dictionary, bw_file, window_length): logger.info('looking for footprints withing peaks') @@ -299,6 +299,13 @@ def find_peaks_from_bw(bed_dictionary, bw_file): scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, int(positions[0]), int(positions[1]))))) #save the scores to an array + peak_len = len(scores_in_peak) + + if peak_len <= window_length: + window_length = peak_len + + #------------------ start work with window + bw_peak_background = np.mean(scores_in_peak) #find the mean of all scores within one peak part = bw_peak_background/10 #10 procent of the background bw_peak_background = bw_peak_background + part @@ -326,7 +333,9 @@ def find_peaks_from_bw(bed_dictionary, bw_file): footprint_scores.append(score) #save the current score check_position = position - footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + int(positions[0]), check_position + int(positions[0]), bed_dictionary[header]) + footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + int(positions[0]), check_position + int(positions[0]), bed_dictionary[header]) #save the last footprint + + #-------------------- end work with window all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['chromosom'], x[1]['start']), reverse = False) @@ -373,6 +382,8 @@ def main(): bw_file = "./control_footprints.bw" + window_length = 200 + args = parse_args() #check_existing_input_files(args) @@ -397,7 +408,7 @@ def main(): #logger.info(vars(args)) bed_dictionary = make_bed_dictionary(peaks_bed_file) - all_footprints = find_peaks_from_bw(bed_dictionary, bw_file) + all_footprints = find_peaks_from_bw(bed_dictionary, bw_file, window_length) write_to_bed_file(all_footprints) #logger.info("call_peaks needed %s seconds to generate the output" % (time.time() - start)) From 1cd5bb1cc518cd1c96aabebc4ac98dc11e114d5a Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 12 Nov 2018 13:40:44 +0100 Subject: [PATCH 026/206] changing the input parameters, creating a function for searching within a window (not working yet) --- call_peaks.py | 84 ++++++++++++++++++++++++++++----------------------- 1 file changed, 47 insertions(+), 37 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index f77eaa2..41fe368 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -22,7 +22,6 @@ from statsmodels.sandbox.stats.multicomp import multipletests #for bonfferoni import matplotlib.pyplot as plt import random - import textwrap logger = logging.getLogger('call_peaks') @@ -42,8 +41,10 @@ def parse_args(): #required_arguments.add_argument('--bed', help='provide a file with peaks in .bed format', required=True) #all other arguments are optional - parser.add_argument('--output_directory', default='output', const='output', nargs='?', help='output directory, by default ./output/') - parser.add_argument('--window_length', default='100', type=int, help='enter the length for a window, by defauld 100 bp') + #parser.add_argument('--output_directory', default='output', const='output', nargs='?', help='output directory, by default ./output/') + parser.add_argument('--output_file', default='call_peaks_output.bed', type=str, help='enter a name for the output file, by default ./call_peaks_output.bed') + parser.add_argument('--window_length', default=200, type=int, help='enter the length for a window, by defauld 200 bp') + parser.add_argument('--step', default=100, type=int, help='enter a step to move the window, by default 100 bp') parser.add_argument('--threshold', default=0.3, type=float, help='enter the threshold for peaks searching, by defauld 0.3') parser.add_argument('--silent', action='store_true', help='while working with data write the information only into ./call_peaks_log.txt') args = parser.parse_args() @@ -283,6 +284,38 @@ def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, return footprint_count, all_footprints +def search_in_window(all_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry): + bw_peak_background = np.mean(scores_in_peak) #find the mean of all scores within one peak + part = bw_peak_background/10 #10 procent of the background + bw_peak_background = bw_peak_background + part + + check_position = 0 #for the whole peak + footprint_start = 1 #for each footprint + footprint_scores = [] #for each footprint + + for i in range(len(scores_in_peak)): + position = i + 1 #calculate the relative position for a score + score = scores_in_peak[i] #extract one score from the list + if score >= bw_peak_background: + if position != (check_position + 1): #if this position is not the next with the last position we have checked + #save the last footprint + if check_position != 0: #if this is not the start of the first footprint within this peak + + footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start, check_position + peak_start, bed_dictionary_entry) + + #start a new footprint + footprint_start = position + footprint_scores = [] + + check_position = position + + footprint_scores.append(score) #save the current score + check_position = position + + footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start, check_position + peak_start, bed_dictionary_entry) #save the last footprint + + return all_footprints, footprint_count + def find_peaks_from_bw(bed_dictionary, bw_file, window_length): logger.info('looking for footprints withing peaks') @@ -296,44 +329,20 @@ def find_peaks_from_bw(bed_dictionary, bw_file, window_length): header_splitted = re.split(r':', header) chromosom = header_splitted[0] positions = re.split(r'-', header_splitted[-1]) + peak_start = int(positions[0]) + peak_end = int(positions[1]) - scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, int(positions[0]), int(positions[1]))))) #save the scores to an array + scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, peak_start, peak_end)))) #save the scores to an array peak_len = len(scores_in_peak) - if peak_len <= window_length: - window_length = peak_len + #if peak_len <= window_length: + # window_length = peak_len + window_length = peak_len #------------------ start work with window - bw_peak_background = np.mean(scores_in_peak) #find the mean of all scores within one peak - part = bw_peak_background/10 #10 procent of the background - bw_peak_background = bw_peak_background + part - - check_position = 0 #for the whole peak - footprint_start = 1 #for each footprint - footprint_scores = [] #for each footprint - - for i in range(len(scores_in_peak)): - position = i + 1 #calculate the relative position for a score - score = scores_in_peak[i] #extract one score from the list - if score >= bw_peak_background: - if position != (check_position + 1): #if this position is not the next with the last position we have checked - #save the last footprint - if check_position != 0: #if this is not the start of the first footprint within this peak - - footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + int(positions[0]), check_position + int(positions[0]), bed_dictionary[header]) - - #start a new footprint - footprint_start = position - footprint_scores = [] - - check_position = position - - footprint_scores.append(score) #save the current score - check_position = position - - footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + int(positions[0]), check_position + int(positions[0]), bed_dictionary[header]) #save the last footprint + all_footprints, footprint_count = search_in_window(all_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header]) #-------------------- end work with window @@ -343,7 +352,7 @@ def find_peaks_from_bw(bed_dictionary, bw_file, window_length): def write_to_bed_file(all_footprints): output_file_name = "not_sorted_footprints.bed" #save in the working directory - sorted_output_file_name = "footprints.bed" + sorted_output_file_name = "footprints_new.bed" header = ["#chr", "start", "end", "name", "score", "len", "max_pos", "bonus_info"] #a header to know what is in the columns @@ -388,9 +397,10 @@ def main(): #check_existing_input_files(args) #check if there is an existing directory that user gave as input, otherwise create this directory from the path provided from the user - check_directory(args.output_directory) + #check_directory(args.output_directory) - fh = logging.FileHandler(os.path.join(args.output_directory, "call_peaks_log.txt")) + #fh = logging.FileHandler(os.path.join(args.output_directory, "call_peaks_log.txt")) + fh = logging.FileHandler("call_peaks_log.txt") fh.setLevel(logging.INFO) fh.setFormatter(formatter) logger.addHandler(fh) From 88c1336718e0455c8c5e2fb3d4044c1eb4512896 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 13 Nov 2018 14:03:42 +0100 Subject: [PATCH 027/206] first try with window, the problem is that in some cases the window slides not, i don't know why --- call_peaks.py | 267 ++++++++++++++++++++------------------------------ 1 file changed, 107 insertions(+), 160 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 41fe368..09edfac 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -70,117 +70,16 @@ def check_name(name_to_test): name = '_' + name return name -#check if the bw score is already saved, if so check if it is bigger than the new one -def save_bw_score(key_for_bed_dict, matches_dict, bw_score, moods_score, which_score): - - if np.isnan(bw_score): bw_score = 0.0 - - #bw_score = moods_score * bw_score #apply moods score as well - - if key_for_bed_dict in matches_dict: - - if which_score == "mean": - #save the mean of both scores - matches_dict[key_for_bed_dict] = np.mean([matches_dict[key_for_bed_dict], bw_score]) - - elif which_score == "greater": - #save the biggest of scores - if matches_dict[key_for_bed_dict] < bw_score: - matches_dict[key_for_bed_dict] = bw_score - - else: - matches_dict[key_for_bed_dict] = bw_score - - return matches_dict - def remove_file(file): if os.path.isfile(file): os.remove(file) -def clean_directory(cleans, output_directory, motif): - - for clean in cleans: - if clean == 'all' or clean == 'cut_motifs': - remove_file(motif) - #the output_merge.fa will be deleted after processing of the multiprocessing - -def tool_make_output(motif, genome, output_directory, cleans, p_value, bed_dictionary, moods_bg, condition1, condition2, global_mean, global_std, which_score): - - standard_moods_bg = 0.25, 0.25, 0.25, 0.25 - - control_dict = {} - overexpression_dict = {} - - differences = [] - control_dict, overexpression_dict, differences = call_moods(motif, genome, output_directory, p_value, standard_moods_bg, condition2, condition1, control_dict, overexpression_dict, differences, which_score) - - #make arrays of the dictionaries - control_array = [] - overexpression_array = [] - - for key in control_dict: - control_array.append(control_dict[key]) - overexpression_array.append(overexpression_dict[key]) - - motif_name = motif.replace(output_directory, '') - motif_name = motif_name.replace('/', '') - - #make the wilcoxon signed-rank test - my_wilcoxon_pvalue, direction, differences, differences_normalized, motif_std = my_wilcoxon(condition2, condition1, control_array, overexpression_array, global_mean, global_std, motif_name, correction = False) - - clean_directory(cleans, output_directory, motif) - - return my_wilcoxon_pvalue, direction, differences, differences_normalized, motif_std - def make_name_from_path(full_path, output_directory, ending): return os.path.join(output_directory, get_name_from_path(full_path) + ending) def get_name_from_path(full_path): return os.path.splitext(os.path.basename(full_path))[0] -def compute_differences(bed_dictionary, condition1, condition2): - logger.info("the mean and standard deviation for the differences in peaks will be count now") - - bw_cond1 = pyBigWig.open(condition1) - bw_cond2 = pyBigWig.open(condition2) - - global_differences = {} #dict - differences_array = [] #to compute the mean at the end - cond1_array = [] - cond2_array = [] - - for header in bed_dictionary: - header_splitted = re.split(r':', header) - chromosom = header_splitted[0] - positions = re.split(r'-', header_splitted[-1]) - - #compute the background difference for this peak - bw_global_score_cond1 = np.mean(np.nan_to_num(np.array(list(bw_cond1.values(chromosom, int(positions[0]), int(positions[1])))))) - bw_global_score_cond2 = np.mean(np.nan_to_num(np.array(list(bw_cond2.values(chromosom, int(positions[0]), int(positions[1])))))) - bw_global_difference = bw_global_score_cond2 - bw_global_score_cond1 - - global_differences[header] = bw_global_difference - - cond1_array.append(bw_global_score_cond1) - cond2_array.append(bw_global_score_cond2) - - differences_array.append(bw_global_difference) - - bw_cond1.close() - bw_cond2.close() - - mu = np.mean(differences_array) - std = np.std(differences_array, ddof = 1) - - mu_cond1 = np.mean(cond1_array) - - mu_cond2 = np.mean(cond2_array) - - cond1_name = get_name_from_path(condition1) - cond2_name = get_name_from_path(condition2) - - return mu, std - def is_fasta(check_fasta): if not os.path.isfile(check_fasta): #logger.info('there is no file with genome, the exit is forced') @@ -257,66 +156,121 @@ def find_window(bed_file): print(window_length) -def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bonus_info_from_bed): +def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bonus_info_from_bed, footprints_dict): + + print(footprint_scores) + print(len(footprint_scores)) + print() + + if len(footprint_scores) > 2: #exclude small regions to not work with them + + first_max_pos = footprint_scores.index(max(footprint_scores)) + last_max_pos = first_max_pos #assume that there is only one pos with max score + + #find the region with the highest score + for j in range(first_max_pos, len(footprint_scores)): + if footprint_scores[j] < first_max_pos: + last_max_pos = j + else: + last_max_pos = len(footprint_scores) + + if first_max_pos != last_max_pos: + #find a pos in the middle of these both + max_pos = int((last_max_pos - first_max_pos) / 2) + else: + max_pos = first_max_pos - footprint_name = "footprint_" + str(footprint_count) + footprint_score = np.mean(footprint_scores) - first_max_pos = footprint_scores.index(max(footprint_scores)) - last_max_pos = first_max_pos #assume that there is only one pos with max score + search_key = str(chromosom) + ":" + str(footprint_start) + "-" + str(check_position) - #find the region with the highest score - for j in range(first_max_pos, len(footprint_scores)): - if footprint_scores[j] < first_max_pos: - last_max_pos = j + #check if this footprint is already saved and if so, save the footprint with bigger score + if search_key in footprints_dict.keys(): + if footprint_score > all_footprints[footprints_dict[search_key]]['score']: #the value of footprints_dict[search_key] is a name of footprint + #update the score for this footprint + all_footprints[footprints_dict[search_key]]['score'] = footprint_score + #update the max_pos + all_footprints[footprints_dict[search_key]]['max_pos'] = max_pos + #else do nothing else: - last_max_pos = len(footprint_scores) + #make a new footprint + footprint_name = "footprint_" + str(footprint_count) + + all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} + + footprints_dict[search_key] = footprint_name + + footprint_count += 1 + + #else do nothint + + return footprint_count, all_footprints, footprints_dict + +def search_in_window(all_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry, step): + + #logger.info("searching for footprints in window") + + peak_len = len(scores_in_peak) + parts = [] - if first_max_pos != last_max_pos: - #find a pos in the middle of these both - max_pos = int((last_max_pos - first_max_pos) / 2) + footprints_dict = {} + + #if necessary divide the peak with help of a sliding window + if peak_len <= window_length: + window_length = peak_len + parts.append(scores_in_peak) else: - max_pos = first_max_pos - - footprint_score = np.mean(footprint_scores) - all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} - footprint_count += 1 - - return footprint_count, all_footprints - -def search_in_window(all_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry): - bw_peak_background = np.mean(scores_in_peak) #find the mean of all scores within one peak - part = bw_peak_background/10 #10 procent of the background - bw_peak_background = bw_peak_background + part - - check_position = 0 #for the whole peak - footprint_start = 1 #for each footprint - footprint_scores = [] #for each footprint - - for i in range(len(scores_in_peak)): - position = i + 1 #calculate the relative position for a score - score = scores_in_peak[i] #extract one score from the list - if score >= bw_peak_background: - if position != (check_position + 1): #if this position is not the next with the last position we have checked - #save the last footprint - if check_position != 0: #if this is not the start of the first footprint within this peak - - footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start, check_position + peak_start, bed_dictionary_entry) - - #start a new footprint - footprint_start = position - footprint_scores = [] - - check_position = position + pos = 0 + while pos < (peak_len - step): + if (pos + window_length) >= len(scores_in_peak): + part = scores_in_peak[pos:] + else: + part = scores_in_peak[pos:pos + window_length] + + pos = pos + step + + if len(part) != 1: #otherwise it makes no sense to look on the mean within this part and look for footprints + parts.append(part) + + #print(peak_len) + #print("number of parts ", len(parts)) + + #look in each window and save the footprints + for window in parts: + + bw_peak_background = np.mean(window) #find the mean of all scores within one peak + part = bw_peak_background/10 #10 procent of the background + bw_peak_background = bw_peak_background + part + + check_position = 0 #for the whole peak + footprint_start = 1 #for each footprint + footprint_scores = [] #for each footprint - footprint_scores.append(score) #save the current score - check_position = position + for i in range(len(window)): + position = i + 1 #calculate the relative position for a score + score = window[i] #extract one score from the list + if score >= bw_peak_background: + if position != (check_position + 1): #if this position is not the next with the last position we have checked + #save the last footprint + if check_position != 0: #if this is not the start of the first footprint within this peak - footprint_count, all_footprints = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start, check_position + peak_start, bed_dictionary_entry) #save the last footprint + footprint_count, all_footprints, footprints_dict = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start, check_position + peak_start, bed_dictionary_entry, footprints_dict) + + #start a new footprint + footprint_start = position + footprint_scores = [] + + check_position = position + + footprint_scores.append(score) #save the current score + check_position = position + + footprint_count, all_footprints, footprints_dict = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start, check_position + peak_start, bed_dictionary_entry, footprints_dict) #save the last footprint return all_footprints, footprint_count -def find_peaks_from_bw(bed_dictionary, bw_file, window_length): +def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step): logger.info('looking for footprints withing peaks') @@ -336,15 +290,7 @@ def find_peaks_from_bw(bed_dictionary, bw_file, window_length): peak_len = len(scores_in_peak) - #if peak_len <= window_length: - # window_length = peak_len - - window_length = peak_len - #------------------ start work with window - - all_footprints, footprint_count = search_in_window(all_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header]) - - #-------------------- end work with window + all_footprints, footprint_count = search_in_window(all_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step) all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['chromosom'], x[1]['start']), reverse = False) @@ -392,6 +338,7 @@ def main(): bw_file = "./control_footprints.bw" window_length = 200 + step = 100 args = parse_args() @@ -418,7 +365,7 @@ def main(): #logger.info(vars(args)) bed_dictionary = make_bed_dictionary(peaks_bed_file) - all_footprints = find_peaks_from_bw(bed_dictionary, bw_file, window_length) + all_footprints = find_peaks_from_bw(bed_dictionary, bw_file, window_length, step) write_to_bed_file(all_footprints) #logger.info("call_peaks needed %s seconds to generate the output" % (time.time() - start)) From f1f0988b68dd98a8d55101d4c1f24a5d90fca3f5 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 13 Nov 2018 14:50:28 +0100 Subject: [PATCH 028/206] the search with sliding window is done, it needs to be tested --- call_peaks.py | 34 +++++++++++++++++++++------------- 1 file changed, 21 insertions(+), 13 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 09edfac..daa27ad 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -158,10 +158,6 @@ def find_window(bed_file): def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bonus_info_from_bed, footprints_dict): - print(footprint_scores) - print(len(footprint_scores)) - print() - if len(footprint_scores) > 2: #exclude small regions to not work with them first_max_pos = footprint_scores.index(max(footprint_scores)) @@ -213,6 +209,7 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea peak_len = len(scores_in_peak) parts = [] + parts_positions = [] footprints_dict = {} @@ -220,6 +217,7 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea if peak_len <= window_length: window_length = peak_len parts.append(scores_in_peak) + parts_positions.append(0) else: pos = 0 while pos < (peak_len - step): @@ -227,24 +225,30 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea part = scores_in_peak[pos:] else: part = scores_in_peak[pos:pos + window_length] - - pos = pos + step if len(part) != 1: #otherwise it makes no sense to look on the mean within this part and look for footprints parts.append(part) + parts_positions.append(pos) + + pos = pos + step + print(parts_positions) + print(peak_len) #print(peak_len) #print("number of parts ", len(parts)) #look in each window and save the footprints - for window in parts: + for j in range(len(parts)): + + window = parts[j] bw_peak_background = np.mean(window) #find the mean of all scores within one peak part = bw_peak_background/10 #10 procent of the background bw_peak_background = bw_peak_background + part - - check_position = 0 #for the whole peak - footprint_start = 1 #for each footprint + + check_position = parts_positions[j] #for the whole peak <----- the start position not within the window, but within the peak!!! + print(check_position) + footprint_start = check_position #for each footprint footprint_scores = [] #for each footprint for i in range(len(window)): @@ -255,7 +259,10 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea #save the last footprint if check_position != 0: #if this is not the start of the first footprint within this peak - footprint_count, all_footprints, footprints_dict = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start, check_position + peak_start, bed_dictionary_entry, footprints_dict) + print(peak_start) + print(footprint_start + peak_start) + print(check_position + peak_start) + footprint_count, all_footprints, footprints_dict = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry, footprints_dict) #start a new footprint footprint_start = position @@ -266,7 +273,7 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea footprint_scores.append(score) #save the current score check_position = position - footprint_count, all_footprints, footprints_dict = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start, check_position + peak_start, bed_dictionary_entry, footprints_dict) #save the last footprint + footprint_count, all_footprints, footprints_dict = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry, footprints_dict) #save the last footprint return all_footprints, footprint_count @@ -327,7 +334,8 @@ def main(): start = time.time() #peaks_bed_file = "./small_peaks.bed" - peaks_bed_file = "./control_peaks.bed" + #peaks_bed_file = "./control_peaks.bed" + peaks_bed_file = "./one_peak.bed" #find_window(peaks_bed_file) #bed_dictionary = {} From de32619062c55f1934b454f986182ba99b59f8d4 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 13 Nov 2018 15:14:24 +0100 Subject: [PATCH 029/206] need to resolve overlapping footprints --- call_peaks.py | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index daa27ad..6fe3087 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -232,11 +232,6 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea pos = pos + step - print(parts_positions) - print(peak_len) - #print(peak_len) - #print("number of parts ", len(parts)) - #look in each window and save the footprints for j in range(len(parts)): @@ -246,8 +241,7 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea part = bw_peak_background/10 #10 procent of the background bw_peak_background = bw_peak_background + part - check_position = parts_positions[j] #for the whole peak <----- the start position not within the window, but within the peak!!! - print(check_position) + check_position = parts_positions[j] #the start position not within the window, but within the peak!!! footprint_start = check_position #for each footprint footprint_scores = [] #for each footprint @@ -259,9 +253,6 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea #save the last footprint if check_position != 0: #if this is not the start of the first footprint within this peak - print(peak_start) - print(footprint_start + peak_start) - print(check_position + peak_start) footprint_count, all_footprints, footprints_dict = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry, footprints_dict) #start a new footprint From 5efbe54153ef704dfdafbdf7efa721a3c6fbaee4 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 13 Nov 2018 15:53:51 +0100 Subject: [PATCH 030/206] working on overlapping footprints --- call_peaks.py | 52 ++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 41 insertions(+), 11 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 6fe3087..7ef8b7f 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -156,10 +156,22 @@ def find_window(bed_file): print(window_length) -def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bonus_info_from_bed, footprints_dict): +def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bonus_info_from_bed, footprints_dict, last_footprint): if len(footprint_scores) > 2: #exclude small regions to not work with them + if last_footprint != "": #if there are already saved footprints + last_chromosom_and_positions = re.split(r':', last_footprint) + last_positions = re.split(r'-', last_chromosom_and_positions[-1]) + + last_start = int(last_positions[0]) + last_end = int(last_positions[1]) + else: + last_start = 0 + last_end = 0 + + #-------------- max score position + first_max_pos = footprint_scores.index(max(footprint_scores)) last_max_pos = first_max_pos #assume that there is only one pos with max score @@ -175,9 +187,12 @@ def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, max_pos = int((last_max_pos - first_max_pos) / 2) else: max_pos = first_max_pos + #------------------------------------- footprint_score = np.mean(footprint_scores) + #--------------- checking for existing and overlapping footprints + search_key = str(chromosom) + ":" + str(footprint_start) + "-" + str(check_position) #check if this footprint is already saved and if so, save the footprint with bigger score @@ -187,25 +202,40 @@ def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, all_footprints[footprints_dict[search_key]]['score'] = footprint_score #update the max_pos all_footprints[footprints_dict[search_key]]['max_pos'] = max_pos + + last_footprint = search_key #else do nothing else: - #make a new footprint - footprint_name = "footprint_" + str(footprint_count) + #check for overlapping footprints + if (footprint_start <= last_end) and (all_footprints[footprints_dict[last_footprint]]['score'] <= footprint_score): + #merge the last footprint with the current one + footprint_start = min(last_start, footprint_start) + check_position = max(last_end, check_position) + all_footprints[footprints_dict[last_footprint]] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} + + search_key = str(chromosom) + ":" + str(footprint_start) + "-" + str(check_position) + footprints_dict[search_key] = footprints_dict[last_footprint] + footprints_dict.pop(last_footprint) + last_footprint = search_key + else: + #make a new footprint + footprint_name = "footprint_" + str(footprint_count) - all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} + all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) + all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} - footprints_dict[search_key] = footprint_name + footprints_dict[search_key] = footprint_name + last_footprint = search_key - footprint_count += 1 + footprint_count += 1 #else do nothint - return footprint_count, all_footprints, footprints_dict + return footprint_count, all_footprints, footprints_dict, last_footprint def search_in_window(all_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry, step): - #logger.info("searching for footprints in window") + last_footprint = "" #needed to resolve overlapping footprints peak_len = len(scores_in_peak) parts = [] @@ -253,7 +283,7 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea #save the last footprint if check_position != 0: #if this is not the start of the first footprint within this peak - footprint_count, all_footprints, footprints_dict = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry, footprints_dict) + footprint_count, all_footprints, footprints_dict, last_footprint = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry, footprints_dict, last_footprint) #start a new footprint footprint_start = position @@ -264,7 +294,7 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea footprint_scores.append(score) #save the current score check_position = position - footprint_count, all_footprints, footprints_dict = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry, footprints_dict) #save the last footprint + footprint_count, all_footprints, footprints_dict, last_footprint = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry, footprints_dict, last_footprint) #save the last footprint return all_footprints, footprint_count From 1a6ce69573c213fad5655810a12eed2b6d43940a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Mon, 19 Nov 2018 04:43:48 -0500 Subject: [PATCH 031/206] added script for process 'footprint_extraction' --- pipeline.nf | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 83e4736..dd67c85 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -58,7 +58,7 @@ process overlap_with_known_TFBS { process clustering { input: - file (faste) from FASTA_for_clustering + file (fasta) from FASTA_for_clustering output: set name, file ('*.bed') into bed_for_motif_esitmation @@ -132,7 +132,7 @@ process tomtom { } -//Joining channels with meme and tsv files. Filter joined channel on linecount. +//Joining channels with meme and tsv files. Filter joined channel on line count. //Only meme-files which corresponding tsv files have linecount <= 1 are writen to next channel. for_filter = meme_for_filter.join( tsv_for_filter ) for_filter @@ -143,7 +143,7 @@ for_filter .into { meme_for_scan; check } -//If unknown channel is empty print errormessage +//If channel 'check' is empty print errormessage process check_for_unknown_motifs { echo true @@ -160,6 +160,7 @@ process check_for_unknown_motifs { } +//Get the best(first) Motif from each MEME-file process get_best_motif { input: @@ -220,6 +221,8 @@ process create_GTF { bed_for_final_filter.combine(gtf_for_uropa).set {uropa_in} +// Create configuration file for UROPA. +// Takes template and replaces bed- and gtf-placeholders with actual paths. process create_uropa_config { publishDir '/mnt/agnerds/Rene.Wiegandt/10_Master/', mode: 'copy' From 80ffd2a7ae43dce8877863fb0decbdd128d26ec7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Mon, 19 Nov 2018 06:35:08 -0500 Subject: [PATCH 032/206] added script for process 'footprint_extraction' --- pipeline.nf | 1 + 1 file changed, 1 insertion(+) diff --git a/pipeline.nf b/pipeline.nf index dd67c85..45db184 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -17,6 +17,7 @@ process footprint_extraction { script: """ + python ${path_bin}/call_peaks.py --bigwig ${bigWig} --bed ${bed} --output_file ${name}_called_peaks.bed --window_length ${params.window_length} --step ${params.step} --threshold ${params.threshold_footprint_extraction} """ } From 64d99dcb5861a2edc33b3638f33c9557a45aa910 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 20 Nov 2018 13:45:13 +0100 Subject: [PATCH 033/206] adding one dictionary for each peak, so that we can easily look for possibly overlaps --- call_peaks.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/call_peaks.py b/call_peaks.py index 7ef8b7f..cbbdc4d 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -195,6 +195,7 @@ def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, search_key = str(chromosom) + ":" + str(footprint_start) + "-" + str(check_position) + #check if this footprint is already saved and if so, save the footprint with bigger score if search_key in footprints_dict.keys(): if footprint_score > all_footprints[footprints_dict[search_key]]['score']: #the value of footprints_dict[search_key] is a name of footprint @@ -308,6 +309,9 @@ def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step): bw_open = pyBigWig.open(bw_file) for header in bed_dictionary: + + peak_footprints = {} + header_splitted = re.split(r':', header) chromosom = header_splitted[0] positions = re.split(r'-', header_splitted[-1]) @@ -318,7 +322,11 @@ def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step): peak_len = len(scores_in_peak) - all_footprints, footprint_count = search_in_window(all_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step) + peak_footprints, footprint_count = search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step) + + for footprint_name in peak_footprints.keys(): + all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) + all_footprints[footprint_name] = peak_footprints[footprint_name] all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['chromosom'], x[1]['start']), reverse = False) From 16110f50709239705bd36e76f31575bed37f1eea Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Tue, 20 Nov 2018 15:28:07 +0100 Subject: [PATCH 034/206] Add files via upload --- compareBed.sh | 183 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 183 insertions(+) create mode 100644 compareBed.sh diff --git a/compareBed.sh b/compareBed.sh new file mode 100644 index 0000000..8e81434 --- /dev/null +++ b/compareBed.sh @@ -0,0 +1,183 @@ +#!/bin/bash +#data +#motifs +#workdir +#fasta +#min +#max +#output +wrong=() +da=false +mo=false +wo=false +fa=false +mi=false +ma=false +ou=false +he=false + +if [ $# -eq 0 ] +then + he=true +fi + +while [[ $# -gt 0 ]] +do +key="$1" + +case $key in + -d|--data) + data="$2" + da=true + shift + shift + ;; + -m|--motifs) + motifs="$2" + mo=true + shift + shift + ;; + -w|--workdir) + workdir="$2" + wo=true + shift + shift + ;; + -f|--fasta) + fasta="$2" + fa=true + shift + shift + ;; + -min|--min) + min=$2 + mi=true + shift + shift + ;; + -max|--max) + max=$2 + ma=true + shift + shift + ;; + -o|--output) + output="$2" + ou=true + shift + shift + ;; + -h|--help) + help=true + he=true + shift + ;; + *) + wrong+=("$1") + shift + ;; +esac +done + +count=${#wrong[@]} +if [ $count -gt 0 ] +then + for i in ${wrong[@]} + do + echo wrong parameter $i + echo call script without parameters for help or call --help + echo exit + done +exit 1 +fi + +if [ $he == true ] +then + echo "This script utilies bedtools to select new footprints from data." + echo "Therefore the data is compared with known footprint motifs." + echo "The output is a new .bed file with added sequence information." + echo "Required arguments are data and motifs, both in bed-format, and the fasta genome sequences." + echo "If a parameter is chosen, a value must be provided or an error will occur." + echo "--------------------" + echo "usage: compareBed.sh --data --motifs --fasta [optional_parameter ] ..." + echo "--------------------" + echo " required parameter:" + echo " -d --data the path to the .bed file of the footprints" + echo " -m --motifs the path to the .bed file of the scanned motifs" + echo " -f --fasta the path to the .fasta file of genome" + echo " " + echo " optional parameter:" + echo " -w --workdir the path to directory where temporary files will be created" + echo " default is a new directory that is created in the current directory" + echo " -min --min minimum size of footprints; default is 10" + echo " -max --max maximum size of footprints; default is 60" + echo " -o --output output path/file ; default dir is workdir and filename is newFootprints.bed and newFootprints.bed.fasta" + echo " -h --help shows this help message" +exit 0 +fi + +echo selected parameters +echo ------------------- +echo data: $da \(required\) +echo motifs: $mo \(required\) +echo workdir: $wo +echo fasta: $fa \(required\) +echo min: $mi +echo max: $ma +echo output: $ou +echo help: $he + +if [ $da == false ] || [ $mo == false ] || [ $fa == false ] +then + echo required parameters not given. + echo required are: --data \ --motifs \ --fasta \ + exit 1 +fi + +if [ $wo == false ] +then + if [ ! -d workdir1337 ] + then + mkdir workdir1337 + fi + wo=true + workdir="workdir1337" +fi + +if [ $ou == false ] +then + output="newFootprints.bed" + ou=true +fi + +if [ $mi == false ] +then + min=10 + mi=true +fi + +if [ $ma == false ] +then + max=60 + ma=true +fi +#1. first filter. no overlap vs. overlap +bedtools intersect -v -a $data -b $motifs > "$workdir"/pass1Tr.bed +bedtools intersect -wa -a $data -b $motifs > "$workdir"/pass1Fa.bed + +#2. compute absolut maxscore position +Rscript --vanilla maxScore.R "$workdir"/pass1Fa.bed + +#3. subtract overlapping regions for additional motifs +bedtools subtract -a "$workdir"/pass1Fa.bed -b $motifs > "$workdir"/pass2Tr.bed + +#4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition +Rscript --vanilla merge.R $min $max "$workdir" + +#5. add fasta sequences to bed and create fasta file +bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$workdir"/"$output" +bedtools getfasta -name -fi $fasta -bed "$workdir"/"$output" -fo "$workdir"/"$output".fasta + +#6 clean up +rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed \ No newline at end of file From a9d0070e3141f273360608fa4d2cdd7264f75684 Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Tue, 20 Nov 2018 15:30:56 +0100 Subject: [PATCH 035/206] Add files via upload --- maxScore.R | 9 +++++++++ merge.R | 23 +++++++++++++++++++++++ 2 files changed, 32 insertions(+) create mode 100644 maxScore.R create mode 100644 merge.R diff --git a/maxScore.R b/maxScore.R new file mode 100644 index 0000000..4ea545b --- /dev/null +++ b/maxScore.R @@ -0,0 +1,9 @@ +#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +args = commandArgs(TRUE) +file = args[1] + +tab = read.table(file, header=FALSE) +colnames(tab) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +tab$maxpos = tab$start + tab$maxpos + +write.table(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') diff --git a/merge.R b/merge.R new file mode 100644 index 0000000..bbe3c9a --- /dev/null +++ b/merge.R @@ -0,0 +1,23 @@ +#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +args=commandArgs(TRUE) +min=as.numeric(args[1]) +max=as.numeric(args[2]) +folder=args[3] +splitted = read.table(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) +colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +p1 = read.table(paste(folder, "/pass1Tr.bed", sep=''), header=FALSE) +colnames(p1) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +p1$maxpos = p1$start + p1$maxpos + +splitted=rbind(splitted, p1) + +splitted=splitted[which(splitted$stop - splitted$start >= min),] +splitted=splitted[which(splitted$stop - splitted$start <= max),] +splitted$id=make.unique(as.character(splitted$id)) +splitted$length=splitted$stop - splitted$start + +splitted=cbind(splitted, containsMaxpos=0) +splitted$containsMaxpos[intersect(which(splitted$start <= splitted$maxpos), which(splitted$stop > splitted$maxpos))] = 1 +splitted$maxpos = splitted$maxpos - splitted$start +write.table(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') + From 26d276428a2d34c56ec135a7cc226710293081f7 Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Tue, 20 Nov 2018 15:49:28 +0100 Subject: [PATCH 036/206] Update README.md --- README.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 811fa89..fcb5bb2 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,15 @@ -# masterJLU2018 +# compareBed.sh for filtering of new, yet unannotated motifs -de novo motif discovery and evaluation based on footprints identified by TOBIAS +The script mainly utilizes bedtools for comparison. +The sequences in the bed-file from the experiment are compared to a bed-file of sequences of known motifs. +Only sequences with no overlap with the known-motif sequences are selected in the first step. +Then the overlapping parts of overlapping sequences are also selected as new sequences. +The resulting bed-file contains the sequences selected in the two steps. The file has two extra columns appended: 1st the DNA sequence of the entry and 2nd a flag with possible values '1' or '0' for 'no_overlap' or 'overlap' of the maximum score region of the entity with any known-motif sequence. + +Apart from the experiment data (bed-format) of sequences with possible motifs, another bed-file of the sequences with known motifs and a genome file in fasta format are required. + +For usage, run ./compareBed.sh + +dependencies: +- R +- From 6fd9948f4e81d7180033ec7ada7630efe6e3d6c4 Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Tue, 20 Nov 2018 15:57:22 +0100 Subject: [PATCH 037/206] Update README.md --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index fcb5bb2..4dc88e2 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,15 @@ # compareBed.sh for filtering of new, yet unannotated motifs The script mainly utilizes bedtools for comparison. -The sequences in the bed-file from the experiment are compared to a bed-file of sequences of known motifs. +The sequences in the bed-file of the experiment are compared with sequences of known motifs, also in bed-format. Only sequences with no overlap with the known-motif sequences are selected in the first step. Then the overlapping parts of overlapping sequences are also selected as new sequences. -The resulting bed-file contains the sequences selected in the two steps. The file has two extra columns appended: 1st the DNA sequence of the entry and 2nd a flag with possible values '1' or '0' for 'no_overlap' or 'overlap' of the maximum score region of the entity with any known-motif sequence. +The resulting bed-file contains the sequences selected in both steps. The output file has two extra columns appended: 1st, the DNA sequence of the entry, and 2nd, a flag with possible values of '1' or '0' for 'no_overlap' or 'overlap' of the maximum score region of the entity with any known-motif sequence. -Apart from the experiment data (bed-format) of sequences with possible motifs, another bed-file of the sequences with known motifs and a genome file in fasta format are required. +Apart from the experiment data (bed-format) of sequences with possible motifs, another bed-file of the sequences with known motifs and a genome file in fasta format are required. The bed-file with known motif sequences can be calculated with the tool motifscan.py. For usage, run ./compareBed.sh dependencies: -- R -- +- R ?version +- bedtools ?version From ffc665d874efafaae952fd37f88c3e9775c5a230 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 20 Nov 2018 17:00:19 +0100 Subject: [PATCH 038/206] deleting of overlaps is working --- call_peaks.py | 113 +++++++++++++++++++++++++++----------------------- 1 file changed, 61 insertions(+), 52 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index cbbdc4d..4f134a4 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -140,6 +140,7 @@ def make_bed_dictionary(bed_file): return bed_dictionary +#unbenutzt def find_window(bed_file): #chromosom = 1 #start with the first chromosom @@ -156,19 +157,11 @@ def find_window(bed_file): print(window_length) -def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start, check_position, bonus_info_from_bed, footprints_dict, last_footprint): +def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start, footprint_end, bonus_info_from_bed): - if len(footprint_scores) > 2: #exclude small regions to not work with them - - if last_footprint != "": #if there are already saved footprints - last_chromosom_and_positions = re.split(r':', last_footprint) - last_positions = re.split(r'-', last_chromosom_and_positions[-1]) + save_current_footprint = False - last_start = int(last_positions[0]) - last_end = int(last_positions[1]) - else: - last_start = 0 - last_end = 0 + if len(footprint_scores) > 2: #exclude small regions to not work with them #-------------- max score position @@ -191,59 +184,73 @@ def save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_score = np.mean(footprint_scores) + search_key = str(chromosom) + ":" + str(footprint_start) + "-" + str(footprint_end) + #--------------- checking for existing and overlapping footprints + + if len(peak_footprints.keys()) == 0: # hey, this is the first footprint! + save_current_footprint = True - search_key = str(chromosom) + ":" + str(footprint_start) + "-" + str(check_position) + else: # there are already footprints in this peak, so look for overlaps + for existing_footprint_name in peak_footprints.keys(): + old_start = peak_footprints[existing_footprint_name]['start'] + old_end = peak_footprints[existing_footprint_name]['end'] + old_score = peak_footprints[existing_footprint_name]['score'] - #check if this footprint is already saved and if so, save the footprint with bigger score - if search_key in footprints_dict.keys(): - if footprint_score > all_footprints[footprints_dict[search_key]]['score']: #the value of footprints_dict[search_key] is a name of footprint - #update the score for this footprint - all_footprints[footprints_dict[search_key]]['score'] = footprint_score - #update the max_pos - all_footprints[footprints_dict[search_key]]['max_pos'] = max_pos + if footprint_start >= old_start and footprint_start <= old_end: #the start of the new footprint is between the start and end of an old footprint + if footprint_end > old_end: #the new footprint is not completely inside the old one + #update the information about the existing footprint + footprint_score = (peak_footprints[existing_footprint_name]['score'] + footprint_score) / 2 #find the average of both scores - last_footprint = search_key - #else do nothing - else: - #check for overlapping footprints - if (footprint_start <= last_end) and (all_footprints[footprints_dict[last_footprint]]['score'] <= footprint_score): - #merge the last footprint with the current one - footprint_start = min(last_start, footprint_start) - check_position = max(last_end, check_position) - all_footprints[footprints_dict[last_footprint]] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} - - search_key = str(chromosom) + ":" + str(footprint_start) + "-" + str(check_position) - footprints_dict[search_key] = footprints_dict[last_footprint] - footprints_dict.pop(last_footprint) - last_footprint = search_key - else: - #make a new footprint - footprint_name = "footprint_" + str(footprint_count) + peak_footprints[existing_footprint_name]['end'] = footprint_end + peak_footprints[existing_footprint_name]['score'] = footprint_score + #we can not update the max_pos as we do not have the information about scores array of the existing footprint + #else: the new footprint is completely inside the old one, do nothing + save_current_footprint = False + break + + elif footprint_end >= old_start and footprint_end <= old_end: #the end of the new footprint is between the start and end of an old footprint + if footprint_start < old_start: #the new footprint is not completely inside the old one + #update the information about the existing footprint + footprint_score = (peak_footprints[existing_footprint_name]['score'] + footprint_score) / 2 #find the average of both scores + + peak_footprints[existing_footprint_name]['start'] = footprint_start + peak_footprints[existing_footprint_name]['score'] = footprint_score + #else do nothing + save_current_footprint = False + break - all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': check_position, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} + elif footprint_start <= old_start and footprint_end >= old_end: #the old footprint is exactly between the start and end positions of the new footprint + #update the information about the existing footprint + peak_footprints[existing_footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': footprint_end, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} + save_current_footprint = False + break - footprints_dict[search_key] = footprint_name - last_footprint = search_key + else: #so this is a new footprint that has no overlaps with the others - footprint_count += 1 + save_current_footprint = True - #else do nothint + if save_current_footprint == True: + #make sure to save this footprint + + footprint_name = "footprint_" + str(footprint_count) - return footprint_count, all_footprints, footprints_dict, last_footprint + peak_footprints[footprint_name] = peak_footprints.get(footprint_name, {}) + peak_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': footprint_end, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} -def search_in_window(all_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry, step): + footprint_count = footprint_count + 1 - last_footprint = "" #needed to resolve overlapping footprints + #else do nothing + + return footprint_count, peak_footprints + +def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry, step): peak_len = len(scores_in_peak) parts = [] parts_positions = [] - footprints_dict = {} - #if necessary divide the peak with help of a sliding window if peak_len <= window_length: window_length = peak_len @@ -268,9 +275,11 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea window = parts[j] + #-------------- change to parameter that a user can set bw_peak_background = np.mean(window) #find the mean of all scores within one peak part = bw_peak_background/10 #10 procent of the background bw_peak_background = bw_peak_background + part + #---------------------------------------------------------- check_position = parts_positions[j] #the start position not within the window, but within the peak!!! footprint_start = check_position #for each footprint @@ -284,7 +293,7 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea #save the last footprint if check_position != 0: #if this is not the start of the first footprint within this peak - footprint_count, all_footprints, footprints_dict, last_footprint = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry, footprints_dict, last_footprint) + footprint_count, peak_footprints = save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry) #start a new footprint footprint_start = position @@ -295,9 +304,9 @@ def search_in_window(all_footprints, footprint_count, chromosom, peak_start, pea footprint_scores.append(score) #save the current score check_position = position - footprint_count, all_footprints, footprints_dict, last_footprint = save_footprint(footprint_count, footprint_scores, all_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry, footprints_dict, last_footprint) #save the last footprint + footprint_count, peak_footprints = save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry) #save the last footprint - return all_footprints, footprint_count + return peak_footprints, footprint_count def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step): @@ -363,8 +372,8 @@ def main(): start = time.time() #peaks_bed_file = "./small_peaks.bed" - #peaks_bed_file = "./control_peaks.bed" - peaks_bed_file = "./one_peak.bed" + peaks_bed_file = "./control_peaks.bed" + #peaks_bed_file = "./one_peak.bed" #find_window(peaks_bed_file) #bed_dictionary = {} From b92ebad82d1c359954dfe1839767c7dd3b3afa00 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Wed, 21 Nov 2018 11:11:01 +0100 Subject: [PATCH 039/206] the number of peaks and the number of footprints is printed with help of logger --- call_peaks.py | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 4f134a4..7337fd2 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -80,17 +80,6 @@ def make_name_from_path(full_path, output_directory, ending): def get_name_from_path(full_path): return os.path.splitext(os.path.basename(full_path))[0] -def is_fasta(check_fasta): - if not os.path.isfile(check_fasta): - #logger.info('there is no file with genome, the exit is forced') - print('there is no file with genome, the exit is forced') - sys.exit() - else: - # modified code from https://stackoverflow.com/questions/44293407/how-can-i-check-whether-a-given-file-is-fasta - with open(check_fasta, "r") as handle: - fasta = SeqIO.parse(handle, "fasta") - return any(fasta) # False when `fasta` is empty, i.e. wasn't a FASTA file - def check_existing_input_files(args): if not is_fasta(args.genome): @@ -414,7 +403,10 @@ def main(): all_footprints = find_peaks_from_bw(bed_dictionary, bw_file, window_length, step) write_to_bed_file(all_footprints) - #logger.info("call_peaks needed %s seconds to generate the output" % (time.time() - start)) + logger.info("the number of peaks: " + str(len(bed_dictionary))) + logger.info("the number of footprints: " + str(len(all_footprints))) + + logger.info("call_peaks needed %s minutes to generate the output" % ((time.time() - start)/60)) for handler in logger.handlers: handler.close() From 8c4da336af6e6bab1172354fb80788fd09a404de Mon Sep 17 00:00:00 2001 From: anastasiia Date: Wed, 21 Nov 2018 11:28:56 +0100 Subject: [PATCH 040/206] adding the possibility for user to chose how many percent to add to the background --- call_peaks.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 7337fd2..64c9a22 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -45,7 +45,7 @@ def parse_args(): parser.add_argument('--output_file', default='call_peaks_output.bed', type=str, help='enter a name for the output file, by default ./call_peaks_output.bed') parser.add_argument('--window_length', default=200, type=int, help='enter the length for a window, by defauld 200 bp') parser.add_argument('--step', default=100, type=int, help='enter a step to move the window, by default 100 bp') - parser.add_argument('--threshold', default=0.3, type=float, help='enter the threshold for peaks searching, by defauld 0.3') + parser.add_argument('--percentage', default=10, type=int, help='enter a percentage to be added to background while searching for footprints, by default 10%') parser.add_argument('--silent', action='store_true', help='while working with data write the information only into ./call_peaks_log.txt') args = parser.parse_args() @@ -234,7 +234,7 @@ def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom return footprint_count, peak_footprints -def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry, step): +def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry, step, percentage): peak_len = len(scores_in_peak) parts = [] @@ -264,9 +264,9 @@ def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, pe window = parts[j] - #-------------- change to parameter that a user can set + #-------------- add some percent to the background to avoid the noice we don't want to have bw_peak_background = np.mean(window) #find the mean of all scores within one peak - part = bw_peak_background/10 #10 procent of the background + part = (percentage*bw_peak_background)/100 #x procent of the background bw_peak_background = bw_peak_background + part #---------------------------------------------------------- @@ -297,7 +297,7 @@ def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, pe return peak_footprints, footprint_count -def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step): +def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step, percentage): logger.info('looking for footprints withing peaks') @@ -320,7 +320,7 @@ def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step): peak_len = len(scores_in_peak) - peak_footprints, footprint_count = search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step) + peak_footprints, footprint_count = search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step, percentage) for footprint_name in peak_footprints.keys(): all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) @@ -400,7 +400,7 @@ def main(): #logger.info(vars(args)) bed_dictionary = make_bed_dictionary(peaks_bed_file) - all_footprints = find_peaks_from_bw(bed_dictionary, bw_file, window_length, step) + all_footprints = find_peaks_from_bw(bed_dictionary, bw_file, window_length, step, args.percentage) write_to_bed_file(all_footprints) logger.info("the number of peaks: " + str(len(bed_dictionary))) From 02b7fc8b78f9934a694d4cb1a990a259142f8091 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Wed, 21 Nov 2018 11:30:05 +0100 Subject: [PATCH 041/206] deleting of an unused function --- call_peaks.py | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 64c9a22..191b20a 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -129,23 +129,6 @@ def make_bed_dictionary(bed_file): return bed_dictionary -#unbenutzt -def find_window(bed_file): - - #chromosom = 1 #start with the first chromosom - window_length = 0 - - with open(bed_file) as read_bed_file: - for bed_line in read_bed_file: - bed_line_array = re.split(r'\t', bed_line.rstrip('\n')) - if bed_line_array[1].isdigit() and bed_line_array[2].isdigit() and int(bed_line_array[1]) <= int(bed_line_array[2]): #in the real bedfile the second column is a start position, and the third column is an end position, so we are checking if these are integers and if the start position is smaller than the end one - #if chromosom == int(bed_line_array[0]): - peak_len = int(bed_line_array[2]) - int(bed_line_array[1]) - if peak_len > window_length: - window_length = peak_len - - print(window_length) - def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start, footprint_end, bonus_info_from_bed): save_current_footprint = False From 24296126788df340ee8c0a7ac14da14a7182abc8 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Wed, 21 Nov 2018 12:07:02 +0100 Subject: [PATCH 042/206] using the output file as parameter as well as rounding of the scores --- call_peaks.py | 65 ++++++++++++++++++--------------------------------- 1 file changed, 23 insertions(+), 42 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 191b20a..3ade475 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -36,9 +36,9 @@ def parse_args(): This script produces a file with peaks in .bed format from the file with scores in .bigWig format. '''), epilog='That is what you need to make this script work for you. Enjoy it') - #required_arguments = parser.add_argument_group('required arguments') - #required_arguments.add_argument('--bigwig', help='a bigWig-file with scores', required=True) - #required_arguments.add_argument('--bed', help='provide a file with peaks in .bed format', required=True) + required_arguments = parser.add_argument_group('required arguments') + required_arguments.add_argument('--bigwig', help='a bigWig-file with scores', required=True) + required_arguments.add_argument('--bed', help='provide a file with peaks in .bed format', required=True) #all other arguments are optional #parser.add_argument('--output_directory', default='output', const='output', nargs='?', help='output directory, by default ./output/') @@ -82,27 +82,14 @@ def get_name_from_path(full_path): def check_existing_input_files(args): - if not is_fasta(args.genome): - #logger.info('please make sure the input genome file has a fasta format') - print('please make sure the input genome file has a fasta format') - sys.exit() - if not os.path.isfile(args.condition1) or not os.path.isfile(args.condition2): - #logger.info('please make sure the both files with conditions to compare exist') - print('please make sure the both files with conditions to compare exist') - sys.exit() - if not args.condition1.endswith('.bw') or not args.condition2.endswith('.bw'): - #logger.info('please check if the both conditions files are in bigWig format') - print('please check if the both conditions files are in bigWig format') - sys.exit() - #check if the file with motifs exists - if not os.path.isfile(args.motifs): - #logger.info('there is no file with motifs, the exit is forced') - print('there is no file with motifs, the exit is forced') + #check if the bigWig file exists + if not os.path.isfile(args.bigwig): + print('there is no such bigWig file ' + args.bigwig + ', the exit is forced') sys.exit() #check if the bed file exists - if not os.path.isfile(args.bed_file): + if not os.path.isfile(args.bed): #logger.info('there is no such bed file ' + args.bed_file + ', the exit is forced') - print('there is no such bed file ' + args.bed_file + ', the exit is forced') + print('there is no such bed file ' + args.bed + ', the exit is forced') sys.exit() def make_bed_dictionary(bed_file): @@ -282,7 +269,7 @@ def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, pe def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step, percentage): - logger.info('looking for footprints withing peaks') + logger.info('looking for footprints within peaks') footprint_count = 1 all_footprints = {} @@ -313,9 +300,8 @@ def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step, percentage) return all_footprints -def write_to_bed_file(all_footprints): - output_file_name = "not_sorted_footprints.bed" #save in the working directory - sorted_output_file_name = "footprints_new.bed" +def write_to_bed_file(all_footprints, sorted_output_file_name): + output_file_name = "not_sorted_" + sorted_output_file_name #save in the working directory header = ["#chr", "start", "end", "name", "score", "len", "max_pos", "bonus_info"] #a header to know what is in the columns @@ -326,7 +312,7 @@ def write_to_bed_file(all_footprints): output_file.write('\t'.join(header) + '\n') #write the header for footprint in all_footprints: - output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(footprint[1]['score']), str(footprint[1]['len']), str(footprint[1]['max_pos']), '\t'.join(footprint[1]['bonus'])]) + '\n') + output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(round(footprint[1]['score'], 6)), str(footprint[1]['len']), str(footprint[1]['max_pos']), '\t'.join(footprint[1]['bonus'])]) + '\n') output_file.close() @@ -344,23 +330,18 @@ def main(): start = time.time() #peaks_bed_file = "./small_peaks.bed" - peaks_bed_file = "./control_peaks.bed" + #peaks_bed_file = "./control_peaks.bed" #peaks_bed_file = "./one_peak.bed" #find_window(peaks_bed_file) - #bed_dictionary = {} - #bed_dictionary["chr1:3062743-3063132"] = ["control_1"] - #bed_dictionary["chr1:3343546-3344520"] = ["control_2"] - #bed_dictionary["chr1:3062810-3063132"] = ["control1"] #the 0.position has already a score bigger than the background - - bw_file = "./control_footprints.bw" + #bw_file = "./control_footprints.bw" - window_length = 200 - step = 100 + #window_length = 200 + #step = 100 args = parse_args() - #check_existing_input_files(args) + check_existing_input_files(args) #check if there is an existing directory that user gave as input, otherwise create this directory from the path provided from the user #check_directory(args.output_directory) @@ -379,17 +360,17 @@ def main(): if args.silent: logger.removeHandler(ch) - #logger.info("call_peaks.py was called using these parameters:") - #logger.info(vars(args)) + logger.info("call_peaks.py was called using these parameters:") + logger.info(vars(args)) - bed_dictionary = make_bed_dictionary(peaks_bed_file) - all_footprints = find_peaks_from_bw(bed_dictionary, bw_file, window_length, step, args.percentage) - write_to_bed_file(all_footprints) + bed_dictionary = make_bed_dictionary(args.bed) + all_footprints = find_peaks_from_bw(bed_dictionary, args.bigwig, args.window_length, args.step, args.percentage) + write_to_bed_file(all_footprints, args.output_file) logger.info("the number of peaks: " + str(len(bed_dictionary))) logger.info("the number of footprints: " + str(len(all_footprints))) - logger.info("call_peaks needed %s minutes to generate the output" % ((time.time() - start)/60)) + logger.info("call_peaks needed %s minutes to generate the output" % (round((time.time() - start)/60, 2))) for handler in logger.handlers: handler.close() From d810bafe05341660881514349a17afb20abe6a96 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Wed, 21 Nov 2018 12:50:47 +0100 Subject: [PATCH 043/206] deleting of unused imports and explaining why the other imports are needed --- call_peaks.py | 38 ++++++++++---------------------------- 1 file changed, 10 insertions(+), 28 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 3ade475..deb1e40 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -5,24 +5,16 @@ @contact: anastasiia.petrova(at)mpi-bn.mpg.de """ -import argparse -import sys -import os -import re -import time -import multiprocessing -import logging -import subprocess -from Bio import SeqIO -import Bio.SeqIO.FastaIO as bio -import numpy as np -from collections import defaultdict -from scipy import stats -import pyBigWig -from statsmodels.sandbox.stats.multicomp import multipletests #for bonfferoni -import matplotlib.pyplot as plt -import random -import textwrap +import argparse #for parsing the parameters +import sys #for example to exit if a problem occured +import os #for example to check the existing path of a file +import re #for example to split a string +import time #to calculate time needed to proceed the data +import logging #to write informaiton about the programm run +import numpy as np #to calculate mean for example +from collections import defaultdict #to create nested dictionaries +import pyBigWig #to work with bigWig files +import textwrap #to print the help message nice logger = logging.getLogger('call_peaks') logger.setLevel(logging.INFO) @@ -329,16 +321,6 @@ def main(): start = time.time() - #peaks_bed_file = "./small_peaks.bed" - #peaks_bed_file = "./control_peaks.bed" - #peaks_bed_file = "./one_peak.bed" - #find_window(peaks_bed_file) - - #bw_file = "./control_footprints.bw" - - #window_length = 200 - #step = 100 - args = parse_args() check_existing_input_files(args) From 492d7f6d3b39a485dd23129b8e038110ba6d80ae Mon Sep 17 00:00:00 2001 From: anastasiia Date: Wed, 21 Nov 2018 14:05:04 +0100 Subject: [PATCH 044/206] final commenting for the important functions in the script --- call_peaks.py | 128 ++++++++++++++++++++++++-------------------------- 1 file changed, 61 insertions(+), 67 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index deb1e40..5ea4af6 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -43,35 +43,19 @@ def parse_args(): return args +#this function is currently unused, but may be used in the future version def check_directory(directory): if not os.path.exists(directory): os.makedirs(directory) #logger.info('a new directory ' + directory + ' was created') print('a new directory ' + directory + ' was created') -#if there are chars that are not allowed, they will be replaced with '_', to the possibly invalid names there will be added '_' at the beginning of the name -def check_name(name_to_test): - badchars= re.compile(r'[^A-Za-z0-9_. ]+|^\.|\.$|^ | $|^$') - badnames= re.compile(r'(aux|com[1-9]|con|lpt[1-9]|prn)(\.|$)') - - #replace all the chars that are not allowed with '_' - name = badchars.sub('_', name_to_test) - - #check for the reserved by the os names - if badnames.match(name): - name = '_' + name - return name - +#check if the file to remove exists and if so, delete it def remove_file(file): if os.path.isfile(file): os.remove(file) -def make_name_from_path(full_path, output_directory, ending): - return os.path.join(output_directory, get_name_from_path(full_path) + ending) - -def get_name_from_path(full_path): - return os.path.splitext(os.path.basename(full_path))[0] - +#check if the input files exist. We have no possibility to check if the format of the files is right here though def check_existing_input_files(args): #check if the bigWig file exists @@ -84,37 +68,44 @@ def check_existing_input_files(args): print('there is no such bed file ' + args.bed + ', the exit is forced') sys.exit() +#make a dictionary out of the .bed file for easy access to the information from the .bed file def make_bed_dictionary(bed_file): logger.info('reading of the bed file') - bed_dictionary = {} + try: #if i can't proceede this file like so, the input was not a .bed file! + bed_dictionary = {} + + with open(bed_file) as read_bed_file: + for bed_line in read_bed_file: + bed_line_array = re.split(r'\t', bed_line.rstrip('\n')) + if bed_line_array[1].isdigit() and bed_line_array[2].isdigit() and int(bed_line_array[1]) <= int(bed_line_array[2]): #in the real bedfile the second column is a start position, and the third column is an end position, so we are checking if these are integers and if the start position is smaller than the end one + key = bed_line_array[0] + ":" + bed_line_array[1] + "-" + bed_line_array[2] + value = [] + for i in range(3, len(bed_line_array)): + value.append(bed_line_array[i]) - with open(bed_file) as read_bed_file: - for bed_line in read_bed_file: - bed_line_array = re.split(r'\t', bed_line.rstrip('\n')) - if bed_line_array[1].isdigit() and bed_line_array[2].isdigit() and int(bed_line_array[1]) <= int(bed_line_array[2]): #in the real bedfile the second column is a start position, and the third column is an end position, so we are checking if these are integers and if the start position is smaller than the end one - key = bed_line_array[0] + ":" + bed_line_array[1] + "-" + bed_line_array[2] - value = [] - for i in range(3, len(bed_line_array)): - value.append(bed_line_array[i]) + bed_dictionary[key] = value + else: #this is not a bed file, force exit + logger.info('please make sure the input bed file has a right format, the problem occured on the line ' + bed_line) + sys.exit() - bed_dictionary[key] = value - else: #this is not a bed file, force exit - logger.info('please make sure the input bed file has a right format, the problem occured on the line ' + bed_line) - sys.exit() + read_bed_file.close() - read_bed_file.close() + return bed_dictionary - return bed_dictionary + except UnicodeDecodeError: #force exit, if input is not a .bed file + logger.info('please make sure that the .bed file has a right format! The exit is forced') + sys.exit() +#to save a footprint, find the score and max_pos for this footprint and chech for overlapping with other footprints within the current peak def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start, footprint_end, bonus_info_from_bed): save_current_footprint = False if len(footprint_scores) > 2: #exclude small regions to not work with them - #-------------- max score position + #calculate the position with the max score. if there are many positions with the same score, save one from the middle first_max_pos = footprint_scores.index(max(footprint_scores)) last_max_pos = first_max_pos #assume that there is only one pos with max score @@ -131,14 +122,11 @@ def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom max_pos = int((last_max_pos - first_max_pos) / 2) else: max_pos = first_max_pos - #------------------------------------- + #calculate the score for the current footprint as mean of all scores from the bigwig file footprint_score = np.mean(footprint_scores) - search_key = str(chromosom) + ":" + str(footprint_start) + "-" + str(footprint_end) - - #--------------- checking for existing and overlapping footprints - + #checking for existing and overlapping footprints if len(peak_footprints.keys()) == 0: # hey, this is the first footprint! save_current_footprint = True @@ -179,12 +167,10 @@ def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom break else: #so this is a new footprint that has no overlaps with the others - save_current_footprint = True if save_current_footprint == True: - #make sure to save this footprint - + #make sure to save this footprint footprint_name = "footprint_" + str(footprint_count) peak_footprints[footprint_name] = peak_footprints.get(footprint_name, {}) @@ -196,6 +182,7 @@ def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom return footprint_count, peak_footprints +#apply slide window searching to estimate regions that are higher than the background and can possibly be footprints def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry, step, percentage): peak_len = len(scores_in_peak) @@ -221,21 +208,20 @@ def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, pe pos = pos + step - #look in each window and save the footprints + #look in each window and try to save the footprints for j in range(len(parts)): - window = parts[j] - #-------------- add some percent to the background to avoid the noice we don't want to have + #add some percent to the background to avoid the noice we don't want to have bw_peak_background = np.mean(window) #find the mean of all scores within one peak part = (percentage*bw_peak_background)/100 #x procent of the background bw_peak_background = bw_peak_background + part - #---------------------------------------------------------- check_position = parts_positions[j] #the start position not within the window, but within the peak!!! footprint_start = check_position #for each footprint footprint_scores = [] #for each footprint + #look on each position inside the window for i in range(len(window)): position = i + 1 #calculate the relative position for a score score = window[i] #extract one score from the list @@ -259,39 +245,46 @@ def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, pe return peak_footprints, footprint_count +#use the information provided from the .bed file to look for footprints within the peaks of interest def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step, percentage): logger.info('looking for footprints within peaks') - footprint_count = 1 - all_footprints = {} + try: + footprint_count = 1 + all_footprints = {} + + bw_open = pyBigWig.open(bw_file) - bw_open = pyBigWig.open(bw_file) + for header in bed_dictionary: - for header in bed_dictionary: + peak_footprints = {} - peak_footprints = {} + header_splitted = re.split(r':', header) + chromosom = header_splitted[0] + positions = re.split(r'-', header_splitted[-1]) + peak_start = int(positions[0]) + peak_end = int(positions[1]) - header_splitted = re.split(r':', header) - chromosom = header_splitted[0] - positions = re.split(r'-', header_splitted[-1]) - peak_start = int(positions[0]) - peak_end = int(positions[1]) + scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, peak_start, peak_end)))) #save the scores to an array - scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, peak_start, peak_end)))) #save the scores to an array + peak_len = len(scores_in_peak) - peak_len = len(scores_in_peak) + peak_footprints, footprint_count = search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step, percentage) - peak_footprints, footprint_count = search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step, percentage) + for footprint_name in peak_footprints.keys(): + all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) + all_footprints[footprint_name] = peak_footprints[footprint_name] - for footprint_name in peak_footprints.keys(): - all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = peak_footprints[footprint_name] + all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['chromosom'], x[1]['start']), reverse = False) - all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['chromosom'], x[1]['start']), reverse = False) + return all_footprints - return all_footprints + except RuntimeError: #if i can't work with the bigwig file like so, it was not a bigwig file! + logger.info('please make sure that the .bigWig file has a right format! The exit is forced') + sys.exit() +#write the found footprints to the .bed file def write_to_bed_file(all_footprints, sorted_output_file_name): output_file_name = "not_sorted_" + sorted_output_file_name #save in the working directory @@ -303,6 +296,7 @@ def write_to_bed_file(all_footprints, sorted_output_file_name): output_file.write('\t'.join(header) + '\n') #write the header + #write each footprint line for line to the output file for footprint in all_footprints: output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(round(footprint[1]['score'], 6)), str(footprint[1]['len']), str(footprint[1]['max_pos']), '\t'.join(footprint[1]['bonus'])]) + '\n') @@ -342,8 +336,8 @@ def main(): if args.silent: logger.removeHandler(ch) - logger.info("call_peaks.py was called using these parameters:") - logger.info(vars(args)) + logger.info("call_peaks.py was called using these parameters: " + str(vars(args))) + #logger.info(vars(args)) bed_dictionary = make_bed_dictionary(args.bed) all_footprints = find_peaks_from_bw(bed_dictionary, args.bigwig, args.window_length, args.step, args.percentage) From 8807ef666b0d3ee83c48b9e4cbccaf8ce21ce5f6 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Wed, 21 Nov 2018 14:28:38 +0100 Subject: [PATCH 045/206] deleting of unused code --- call_peaks.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/call_peaks.py b/call_peaks.py index 5ea4af6..1de4474 100644 --- a/call_peaks.py +++ b/call_peaks.py @@ -267,9 +267,7 @@ def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step, percentage) peak_end = int(positions[1]) scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, peak_start, peak_end)))) #save the scores to an array - - peak_len = len(scores_in_peak) - + peak_footprints, footprint_count = search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step, percentage) for footprint_name in peak_footprints.keys(): From 2fdbf0da858b2fd20c10511c2de052c9db10bcdb Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Wed, 28 Nov 2018 15:34:45 +0100 Subject: [PATCH 046/206] update, working with unmerged motif files now --- compareBed.sh | 84 ++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 76 insertions(+), 8 deletions(-) diff --git a/compareBed.sh b/compareBed.sh index 8e81434..92c55d7 100644 --- a/compareBed.sh +++ b/compareBed.sh @@ -104,14 +104,14 @@ then echo "--------------------" echo " required parameter:" echo " -d --data the path to the .bed file of the footprints" - echo " -m --motifs the path to the .bed file of the scanned motifs" + echo " -m --motifs the path to the directory where the .bed files of the scanned motifs are stored" echo " -f --fasta the path to the .fasta file of genome" echo " " echo " optional parameter:" echo " -w --workdir the path to directory where temporary files will be created" echo " default is a new directory that is created in the current directory" echo " -min --min minimum size of footprints; default is 10" - echo " -max --max maximum size of footprints; default is 60" + echo " -max --max maximum size of footprints; default is 80" echo " -o --output output path/file ; default dir is workdir and filename is newFootprints.bed and newFootprints.bed.fasta" echo " -h --help shows this help message" exit 0 @@ -159,18 +159,65 @@ fi if [ $ma == false ] then - max=60 + max=80 ma=true fi + +if [ ! -d $workdir ] +then + mkdir $workdir +fi + #1. first filter. no overlap vs. overlap -bedtools intersect -v -a $data -b $motifs > "$workdir"/pass1Tr.bed -bedtools intersect -wa -a $data -b $motifs > "$workdir"/pass1Fa.bed +echo get sequences with no overlap +cat $data > "$workdir"/pass1Tr.bed +help=true +for i in "$motifs"/*.bed +do + if [ $help == true ] + then + help=false + bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed + else + help=true + bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed + fi + echo $i +done +if [ $help == false ] +then + cat "$workdir"/pass1TrHelp.bed > "$workdir"/pass1Tr.bed +fi +echo get overlapping sequences +bedtools intersect -v -a $data -b "$workdir"/pass1Tr.bed > "$workdir"/pass1Fa.bed +cat "$workdir"/pass1Fa.bed | wc -l +echo calc maxScore #2. compute absolut maxscore position Rscript --vanilla maxScore.R "$workdir"/pass1Fa.bed -#3. subtract overlapping regions for additional motifs -bedtools subtract -a "$workdir"/pass1Fa.bed -b $motifs > "$workdir"/pass2Tr.bed +#3 subtract overlapping regions for additional motifs +echo "also get subsequences with no overlap of overlapping sequences" +help=true +for i in "$motifs"/*.bed +do + if [ $help == true ] + then + help=false + bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed + else + help=true + bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed + fi + echo $i +done + +if [ $help == false ] +then + cat "$workdir"/pass1FaHelp.bed > "$workdir"/pass2Tr.bed +else + cat "$workdir"/pass1Fa.bed > "$workdir"/pass2Tr.bed +fi #4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition Rscript --vanilla merge.R $min $max "$workdir" @@ -180,4 +227,25 @@ bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$workdir"/"$o bedtools getfasta -name -fi $fasta -bed "$workdir"/"$output" -fo "$workdir"/"$output".fasta #6 clean up -rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed \ No newline at end of file +rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed + + +#1. first filter. no overlap vs. overlap +#bedtools intersect -v -a $data -b $motifs > "$workdir"/pass1Tr.bed +#bedtools intersect -wa -a $data -b $motifs > "$workdir"/pass1Fa.bed + +#2. compute absolut maxscore position +#Rscript --vanilla maxScore.R "$workdir"/pass1Fa.bed + +#3. subtract overlapping regions for additional motifs +#bedtools subtract -a "$workdir"/pass1Fa.bed -b $motifs > "$workdir"/pass2Tr.bed + +#4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition +#Rscript --vanilla merge.R $min $max "$workdir" + +#5. add fasta sequences to bed and create fasta file +#bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$workdir"/"$output" +#bedtools getfasta -name -fi $fasta -bed "$workdir"/"$output" -fo "$workdir"/"$output".fasta + +#6 clean up +#rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed From 902882004278c0029ff9c15b6a0dd1761e2a4256 Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Thu, 29 Nov 2018 13:46:28 +0100 Subject: [PATCH 047/206] update, bugfix output parameter error --- compareBed.sh | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/compareBed.sh b/compareBed.sh index 92c55d7..279c9e3 100644 --- a/compareBed.sh +++ b/compareBed.sh @@ -147,7 +147,7 @@ fi if [ $ou == false ] then - output="newFootprints.bed" + output=${workdir}/"newFootprints.bed" ou=true fi @@ -194,7 +194,7 @@ cat "$workdir"/pass1Fa.bed | wc -l echo calc maxScore #2. compute absolut maxscore position -Rscript --vanilla maxScore.R "$workdir"/pass1Fa.bed +Rscript --vanilla /mnt/agnerds/Jannik.Hamp/maxScore.R "$workdir"/pass1Fa.bed #3 subtract overlapping regions for additional motifs echo "also get subsequences with no overlap of overlapping sequences" @@ -220,14 +220,14 @@ else fi #4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition -Rscript --vanilla merge.R $min $max "$workdir" +Rscript --vanilla /mnt/agnerds/Jannik.Hamp/merge.R $min $max "$workdir" #5. add fasta sequences to bed and create fasta file -bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$workdir"/"$output" -bedtools getfasta -name -fi $fasta -bed "$workdir"/"$output" -fo "$workdir"/"$output".fasta +bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$output" +bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta #6 clean up -rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed +rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed #1. first filter. no overlap vs. overlap From a5e902fa670b55a3ed08075adc827e085308b80b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 29 Nov 2018 07:53:04 -0500 Subject: [PATCH 048/206] added filter for small clusters --- bin/bed_to_fasta.R | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/bin/bed_to_fasta.R b/bin/bed_to_fasta.R index 6767ab5..09e3f4f 100644 --- a/bin/bed_to_fasta.R +++ b/bin/bed_to_fasta.R @@ -4,18 +4,25 @@ # The Sequences of each cluster are writen as an FASTA-file. # @parameter bedInput BED-file with sequences and cluster-id as column"TEs # @parameter prefix prefix for filenames +# @parameter min_seq min. number of sequences per cluster args = commandArgs(trailingOnly = TRUE) bedInput <- args[1] -prefix <- args[2] # "Fasta" +prefix <- args[2] +min_seq <- args[3] bed <- data.table::fread(bedInput, header = FALSE, sep = "\t") -clusters <- split(bed, bed$V3, sorted = TRUE, flatten = FALSE) # <---- Spalte mit Cluster +clusters <- split(bed, bed$V8, sorted = TRUE, flatten = FALSE) # <---- Spalte mit Cluster discard <- lapply(1:length(clusters), function(i){ - sequences <- as.list(as.data.frame(clusters[i])[[2]]) # <---- Splate mit Sequenz - outfile <- paste0(prefix,"_cluster_",i,".FASTA") - seqinr::write.fasta(sequences = sequences, names = as.data.frame(clusters[i])[[1]] - , file.out = outfile, as.string = TRUE) # <---- Spalte mit Name + clust <- as.data.frame(clusters[i]) + print(nrow(clust)) + if (nrow(clust) >= as.numeric(min_seq) ) { + sequences <- as.list(clust[[7]]) # <---- Splate mit Sequenz + outfile <- paste0(prefix,"_cluster_",i,".FASTA") + seqinr::write.fasta(sequences = sequences, names = clust[[4]], file.out = outfile, as.string = TRUE) # <---- Spalte mit Name + } else { + print(paste0("Cluster: ",i," is to small")) + } }) From 420cb1f07ece20199ccaaa6bd157074394b7831e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 29 Nov 2018 07:53:52 -0500 Subject: [PATCH 049/206] changed tomtom/glam2 parameters; added min_seq parameter --- pipeline.nf | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 45db184..e4d502f 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -5,6 +5,8 @@ Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan; fa_overlap_2} Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} Channel.fromPath(params.config).set {config} +params.min_seq = 10 + process footprint_extraction { tag{name} @@ -84,7 +86,7 @@ process bed_to_clustered_fasta { script: """ - Rscript ${path_bin}/bed_to_fasta.R ${bed} ${name} + Rscript ${path_bin}/bed_to_fasta.R ${bed} ${name} ${params.min_seq} """ } @@ -107,7 +109,7 @@ process glam2 { script: """ - glam2 n ${fasta} -O . + glam2 n ${fasta} -O . -a 10 -b 20 -z 5 """ } @@ -128,7 +130,7 @@ process tomtom { script: """ - tomtom ${meme} ${jaspar_db} -thresh 0.01 -mi 1 -text | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv + tomtom ${meme} ${jaspar_db} -thresh 0.01 -text --norc | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv """ } From c24dea92ba6544b2352269358041c554d7b544ce Mon Sep 17 00:00:00 2001 From: petrokvitka Date: Mon, 3 Dec 2018 11:40:36 +0100 Subject: [PATCH 050/206] move the call_peaks.py script to the bin directory --- call_peaks.py => bin/call_peaks.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename call_peaks.py => bin/call_peaks.py (100%) diff --git a/call_peaks.py b/bin/call_peaks.py similarity index 100% rename from call_peaks.py rename to bin/call_peaks.py From 2c0625af8aed74e2b7f2de6eff8aaaa56f84630c Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 3 Dec 2018 11:55:09 +0100 Subject: [PATCH 051/206] control changes --- bin/call_peaks.py | 353 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 353 insertions(+) diff --git a/bin/call_peaks.py b/bin/call_peaks.py index 1de4474..ab6e73f 100644 --- a/bin/call_peaks.py +++ b/bin/call_peaks.py @@ -12,6 +12,359 @@ import time #to calculate time needed to proceed the data import logging #to write informaiton about the programm run import numpy as np #to calculate mean for example +""" +call_peaks uses the uncontinuous score from a bigWig file to estimate peaks +@author: Anastasiia Petrova +@contact: anastasiia.petrova(at)mpi-bn.mpg.de +""" + +import argparse #for parsing the parameters +import sys #for example to exit if a problem occured +import os #for example to check the existing path of a file +import re #for example to split a string +import time #to calculate time needed to proceed the data +import logging #to write informaiton about the programm run +import numpy as np #to calculate mean for example +from collections import defaultdict #to create nested dictionaries +import pyBigWig #to work with bigWig files +import textwrap #to print the help message nice + +logger = logging.getLogger('call_peaks') +logger.setLevel(logging.INFO) + +formatter = logging.Formatter("%(asctime)s : %(message)s", "%Y-%m-%d %H:%M") + +def parse_args(): + + parser = argparse.ArgumentParser(prog = '', description = textwrap.dedent(''' + + This script produces a file with peaks in .bed format from the file with scores in .bigWig format. + '''), epilog='That is what you need to make this script work for you. Enjoy it') + + required_arguments = parser.add_argument_group('required arguments') + required_arguments.add_argument('--bigwig', help='a bigWig-file with scores', required=True) + required_arguments.add_argument('--bed', help='provide a file with peaks in .bed format', required=True) + + #all other arguments are optional + #parser.add_argument('--output_directory', default='output', const='output', nargs='?', help='output directory, by default ./output/') + parser.add_argument('--output_file', default='call_peaks_output.bed', type=str, help='enter a name for the output file, by default ./call_peaks_output.bed') + parser.add_argument('--window_length', default=200, type=int, help='enter the length for a window, by defauld 200 bp') + parser.add_argument('--step', default=100, type=int, help='enter a step to move the window, by default 100 bp') + parser.add_argument('--percentage', default=0, type=int, help='enter a percentage to be added to background while searching for footprints, by default 0%') + parser.add_argument('--silent', action='store_true', help='while working with data write the information only into ./call_peaks_log.txt') + args = parser.parse_args() + + return args + +#this function is currently unused, but may be used in the future version +def check_directory(directory): + if not os.path.exists(directory): + os.makedirs(directory) + #logger.info('a new directory ' + directory + ' was created') + print('a new directory ' + directory + ' was created') + +#check if the file to remove exists and if so, delete it +def remove_file(file): + if os.path.isfile(file): + os.remove(file) + +#check if the input files exist. We have no possibility to check if the format of the files is right here though +def check_existing_input_files(args): + + #check if the bigWig file exists + if not os.path.isfile(args.bigwig): + print('there is no such bigWig file ' + args.bigwig + ', the exit is forced') + sys.exit() + #check if the bed file exists + if not os.path.isfile(args.bed): + #logger.info('there is no such bed file ' + args.bed_file + ', the exit is forced') + print('there is no such bed file ' + args.bed + ', the exit is forced') + sys.exit() + +#make a dictionary out of the .bed file for easy access to the information from the .bed file +def make_bed_dictionary(bed_file): + + logger.info('reading of the bed file') + + try: #if i can't proceede this file like so, the input was not a .bed file! + bed_dictionary = {} + + with open(bed_file) as read_bed_file: + for bed_line in read_bed_file: + bed_line_array = re.split(r'\t', bed_line.rstrip('\n')) + if bed_line_array[1].isdigit() and bed_line_array[2].isdigit() and int(bed_line_array[1]) <= int(bed_line_array[2]): #in the real bedfile the second column is a start position, and the third column is an end position, so we are checking if these are integers and if the start position is smaller than the end one + key = bed_line_array[0] + ":" + bed_line_array[1] + "-" + bed_line_array[2] + value = [] + for i in range(3, len(bed_line_array)): + value.append(bed_line_array[i]) + + bed_dictionary[key] = value + else: #this is not a bed file, force exit + logger.info('please make sure the input bed file has a right format, the problem occured on the line ' + bed_line) + sys.exit() + + read_bed_file.close() + + return bed_dictionary + + except UnicodeDecodeError: #force exit, if input is not a .bed file + logger.info('please make sure that the .bed file has a right format! The exit is forced') + sys.exit() + +#to save a footprint, find the score and max_pos for this footprint and chech for overlapping with other footprints within the current peak +def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start, footprint_end, bonus_info_from_bed): + + save_current_footprint = False + + if len(footprint_scores) > 2: #exclude small regions to not work with them + + #calculate the position with the max score. if there are many positions with the same score, save one from the middle + + first_max_pos = footprint_scores.index(max(footprint_scores)) + last_max_pos = first_max_pos #assume that there is only one pos with max score + + #find the region with the highest score + for j in range(first_max_pos, len(footprint_scores)): + if footprint_scores[j] < first_max_pos: + last_max_pos = j + else: + last_max_pos = len(footprint_scores) + + if first_max_pos != last_max_pos: + #find a pos in the middle of these both + max_pos = int((last_max_pos - first_max_pos) / 2) + else: + max_pos = first_max_pos + + #calculate the score for the current footprint as mean of all scores from the bigwig file + footprint_score = np.mean(footprint_scores) + + #checking for existing and overlapping footprints + if len(peak_footprints.keys()) == 0: # hey, this is the first footprint! + save_current_footprint = True + + else: # there are already footprints in this peak, so look for overlaps + for existing_footprint_name in peak_footprints.keys(): + + old_start = peak_footprints[existing_footprint_name]['start'] + old_end = peak_footprints[existing_footprint_name]['end'] + old_score = peak_footprints[existing_footprint_name]['score'] + + if footprint_start >= old_start and footprint_start <= old_end: #the start of the new footprint is between the start and end of an old footprint + if footprint_end > old_end: #the new footprint is not completely inside the old one + #update the information about the existing footprint + footprint_score = (peak_footprints[existing_footprint_name]['score'] + footprint_score) / 2 #find the average of both scores + + peak_footprints[existing_footprint_name]['end'] = footprint_end + peak_footprints[existing_footprint_name]['score'] = footprint_score + #we can not update the max_pos as we do not have the information about scores array of the existing footprint + #else: the new footprint is completely inside the old one, do nothing + save_current_footprint = False + break + + elif footprint_end >= old_start and footprint_end <= old_end: #the end of the new footprint is between the start and end of an old footprint + if footprint_start < old_start: #the new footprint is not completely inside the old one + #update the information about the existing footprint + footprint_score = (peak_footprints[existing_footprint_name]['score'] + footprint_score) / 2 #find the average of both scores + + peak_footprints[existing_footprint_name]['start'] = footprint_start + peak_footprints[existing_footprint_name]['score'] = footprint_score + #else do nothing + save_current_footprint = False + break + + elif footprint_start <= old_start and footprint_end >= old_end: #the old footprint is exactly between the start and end positions of the new footprint + #update the information about the existing footprint + peak_footprints[existing_footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': footprint_end, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} + save_current_footprint = False + break + + else: #so this is a new footprint that has no overlaps with the others + save_current_footprint = True + + if save_current_footprint == True: + #make sure to save this footprint + footprint_name = "footprint_" + str(footprint_count) + + peak_footprints[footprint_name] = peak_footprints.get(footprint_name, {}) + peak_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': footprint_end, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} + + footprint_count = footprint_count + 1 + + #else do nothing + + return footprint_count, peak_footprints + +#apply slide window searching to estimate regions that are higher than the background and can possibly be footprints +def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry, step, percentage): + + peak_len = len(scores_in_peak) + parts = [] + parts_positions = [] + + #if necessary divide the peak with help of a sliding window + if peak_len <= window_length: + window_length = peak_len + parts.append(scores_in_peak) + parts_positions.append(0) + else: + pos = 0 + while pos < (peak_len - step): + if (pos + window_length) >= len(scores_in_peak): + part = scores_in_peak[pos:] + else: + part = scores_in_peak[pos:pos + window_length] + + if len(part) != 1: #otherwise it makes no sense to look on the mean within this part and look for footprints + parts.append(part) + parts_positions.append(pos) + + pos = pos + step + + #look in each window and try to save the footprints + for j in range(len(parts)): + window = parts[j] + + #add some percent to the background to avoid the noice we don't want to have + bw_peak_background = np.mean(window) #find the mean of all scores within one peak + part = (percentage*bw_peak_background)/100 #x procent of the background + bw_peak_background = bw_peak_background + part + + check_position = parts_positions[j] #the start position not within the window, but within the peak!!! + footprint_start = check_position #for each footprint + footprint_scores = [] #for each footprint + + #look on each position inside the window + for i in range(len(window)): + position = i + 1 #calculate the relative position for a score + score = window[i] #extract one score from the list + if score >= bw_peak_background: + if position != (check_position + 1): #if this position is not the next with the last position we have checked + #save the last footprint + if check_position != 0: #if this is not the start of the first footprint within this peak + + footprint_count, peak_footprints = save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry) + + #start a new footprint + footprint_start = position + footprint_scores = [] + + check_position = position + + footprint_scores.append(score) #save the current score + check_position = position + + footprint_count, peak_footprints = save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry) #save the last footprint + + return peak_footprints, footprint_count + +#use the information provided from the .bed file to look for footprints within the peaks of interest +def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step, percentage): + + logger.info('looking for footprints within peaks') + + try: + footprint_count = 1 + all_footprints = {} + + bw_open = pyBigWig.open(bw_file) + + for header in bed_dictionary: + + peak_footprints = {} + + header_splitted = re.split(r':', header) + chromosom = header_splitted[0] + positions = re.split(r'-', header_splitted[-1]) + peak_start = int(positions[0]) + peak_end = int(positions[1]) + + scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, peak_start, peak_end)))) #save the scores to an array + + peak_footprints, footprint_count = search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step, percentage) + + for footprint_name in peak_footprints.keys(): + all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) + all_footprints[footprint_name] = peak_footprints[footprint_name] + + all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['chromosom'], x[1]['start']), reverse = False) + + return all_footprints + + except RuntimeError: #if i can't work with the bigwig file like so, it was not a bigwig file! + logger.info('please make sure that the .bigWig file has a right format! The exit is forced') + sys.exit() + +#write the found footprints to the .bed file +def write_to_bed_file(all_footprints, sorted_output_file_name): + output_file_name = "not_sorted_" + sorted_output_file_name #save in the working directory + + header = ["#chr", "start", "end", "name", "score", "len", "max_pos", "bonus_info"] #a header to know what is in the columns + + output_file = open(output_file_name, 'w') #open a file to write + + logger.info("print to the output file") + + output_file.write('\t'.join(header) + '\n') #write the header + + #write each footprint line for line to the output file + for footprint in all_footprints: + output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(round(footprint[1]['score'], 6)), str(footprint[1]['len']), str(footprint[1]['max_pos']), '\t'.join(footprint[1]['bonus'])]) + '\n') + + output_file.close() + + #sort the bed file + logger.info('sorting the output file') + + os.system("(head -n 2 " + output_file_name + " && tail -n +3 " + output_file_name + " | sort -k1,1V -k2,2n -k3,3n) > " + sorted_output_file_name) + + logger.info('remove the non-sorted file') + + remove_file(output_file_name) + +def main(): + + start = time.time() + + args = parse_args() + + check_existing_input_files(args) + #check if there is an existing directory that user gave as input, otherwise create this directory from the path provided from the user + #check_directory(args.output_directory) + + #fh = logging.FileHandler(os.path.join(args.output_directory, "call_peaks_log.txt")) + fh = logging.FileHandler("call_peaks_log.txt") + fh.setLevel(logging.INFO) + fh.setFormatter(formatter) + logger.addHandler(fh) + + ch = logging.StreamHandler() + ch.setLevel(logging.INFO) + ch.setFormatter(formatter) + logger.addHandler(ch) + + #if user do not want to see the information about the status of jobs, remove the handler, that writes to the terminal + if args.silent: + logger.removeHandler(ch) + + logger.info("call_peaks.py was called using these parameters: " + str(vars(args))) + #logger.info(vars(args)) + + bed_dictionary = make_bed_dictionary(args.bed) + all_footprints = find_peaks_from_bw(bed_dictionary, args.bigwig, args.window_length, args.step, args.percentage) + write_to_bed_file(all_footprints, args.output_file) + + logger.info("the number of peaks: " + str(len(bed_dictionary))) + logger.info("the number of footprints: " + str(len(all_footprints))) + + logger.info("call_peaks needed %s minutes to generate the output" % (round((time.time() - start)/60, 2))) + + for handler in logger.handlers: + handler.close() + logger.removeFilter(handler) + +if __name__ == "__main__": + main() from collections import defaultdict #to create nested dictionaries import pyBigWig #to work with bigWig files import textwrap #to print the help message nice From f16d6e949e6b0ba95263017aba43c385815e2517 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 3 Dec 2018 12:01:56 +0100 Subject: [PATCH 052/206] adding the environment for the peak calling --- bin/call_peaks.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 bin/call_peaks.yaml diff --git a/bin/call_peaks.yaml b/bin/call_peaks.yaml new file mode 100644 index 0000000..4d3eabd --- /dev/null +++ b/bin/call_peaks.yaml @@ -0,0 +1,9 @@ +name: call_peaks + +channels: + - bioconda + - conda-forge + +dependencies: + - numpy + - pybigwig \ No newline at end of file From e74cc87a5cd0917c956f04fd36dfc9b2ce44183e Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 3 Dec 2018 12:03:20 +0100 Subject: [PATCH 053/206] editing of the commits --- bin/call_peaks.py | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/bin/call_peaks.py b/bin/call_peaks.py index ab6e73f..3aa77b4 100644 --- a/bin/call_peaks.py +++ b/bin/call_peaks.py @@ -5,19 +5,6 @@ @contact: anastasiia.petrova(at)mpi-bn.mpg.de """ -import argparse #for parsing the parameters -import sys #for example to exit if a problem occured -import os #for example to check the existing path of a file -import re #for example to split a string -import time #to calculate time needed to proceed the data -import logging #to write informaiton about the programm run -import numpy as np #to calculate mean for example -""" -call_peaks uses the uncontinuous score from a bigWig file to estimate peaks -@author: Anastasiia Petrova -@contact: anastasiia.petrova(at)mpi-bn.mpg.de -""" - import argparse #for parsing the parameters import sys #for example to exit if a problem occured import os #for example to check the existing path of a file From 21be98b1bdd7500a583bb753e9af6a71cffe4716 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 12:53:24 +0100 Subject: [PATCH 054/206] Update README.md --- README.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 811fa89..1ef227d 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,17 @@ # masterJLU2018 -de novo motif discovery and evaluation based on footprints identified by TOBIAS +De novo motif discovery and evaluation based on footprints identified by TOBIAS + +## Dependencies +* [conda](https://conda.io/docs/user-guide/install/linux.html) +* [Nextflow](https://www.nextflow.io/) +* [MEME-Suite](http://meme-suite.org/doc/install.html?man_type=web) + +## Installation +Start with installing all dependencies listed above. The Nextflow-script needs a conda enviroment to run. To create this enviroment run follwoing commands: + +~~~~ +path=[Path to given masterenv.yml file] +conda env create --name masterenv -f=$path +source activate masterenv +~~~~ From e265495f3256ab1cafb3fdaa05e06b4b4c0bca92 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 12:53:47 +0100 Subject: [PATCH 055/206] Update README.md --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 1ef227d..8428533 100644 --- a/README.md +++ b/README.md @@ -9,7 +9,6 @@ De novo motif discovery and evaluation based on footprints identified by TOBIAS ## Installation Start with installing all dependencies listed above. The Nextflow-script needs a conda enviroment to run. To create this enviroment run follwoing commands: - ~~~~ path=[Path to given masterenv.yml file] conda env create --name masterenv -f=$path From 8345d59a4e23cbc97299e7f8c7b3617ffe937087 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 12:57:37 +0100 Subject: [PATCH 056/206] Update README.md --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 8428533..f277380 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,10 @@ De novo motif discovery and evaluation based on footprints identified by TOBIAS * [MEME-Suite](http://meme-suite.org/doc/install.html?man_type=web) ## Installation -Start with installing all dependencies listed above. The Nextflow-script needs a conda enviroment to run. To create this enviroment run follwoing commands: +Start with installing all dependencies listed above. +Download all files from the [GitHub repository](https://github.molgen.mpg.de/loosolab/masterJLU2018). +The Nextflow-script needs a conda enviroment to run. To create this enviroment you need the yml-file from the repository. +Run the following commands to create the enviroment: ~~~~ path=[Path to given masterenv.yml file] conda env create --name masterenv -f=$path From d8e6fc35496e8dea6750a238fb42f5bc4e83aa13 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 13:07:08 +0100 Subject: [PATCH 057/206] added yaml file for conda enviroment --- masterenv.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 masterenv.yml diff --git a/masterenv.yml b/masterenv.yml new file mode 100644 index 0000000..72755c4 --- /dev/null +++ b/masterenv.yml @@ -0,0 +1,12 @@ + +name: masterenv +channels: + - bioconda + - conda-forge + - defaults + - r +dependencies: + - bedtools + - python + - r-essentials + - r-seqinr \ No newline at end of file From bdb0e830e58d545f8099b05deca2f1b27ba56898 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 13:24:43 +0100 Subject: [PATCH 058/206] Update README.md --- README.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index f277380..dcf573a 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,13 @@ Start with installing all dependencies listed above. Download all files from the [GitHub repository](https://github.molgen.mpg.de/loosolab/masterJLU2018). The Nextflow-script needs a conda enviroment to run. To create this enviroment you need the yml-file from the repository. Run the following commands to create the enviroment: -~~~~ +```console path=[Path to given masterenv.yml file] conda env create --name masterenv -f=$path source activate masterenv -~~~~ +``` + +## Quick Start +```console +nextflow run pipeline.nf --input [INPUT-file] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] --config uropa.config --conda [path to conda enviroment] +``` From 4277a6588f5702b1033964a0baaa18d0e1d060d7 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 13:33:04 +0100 Subject: [PATCH 059/206] Update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index dcf573a..c04ff5b 100644 --- a/README.md +++ b/README.md @@ -22,3 +22,6 @@ source activate masterenv ```console nextflow run pipeline.nf --input [INPUT-file] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] --config uropa.config --conda [path to conda enviroment] ``` +## Parameter + +For further information read the [documentation](https://github.molgen.mpg.de/loosolab/masterJLU2018/wiki) From 146b7f87252a08ff79322175afb9c7fb30ae4e6f Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 13:53:39 +0100 Subject: [PATCH 060/206] added nextflow configuration files --- config/cluster.config | 0 config/create_gtf.config | 0 config/motif_estimation.config | 0 config/peak_calling.config | 0 nextflow.config | 15 +++++++++++++++ 5 files changed, 15 insertions(+) create mode 100644 config/cluster.config create mode 100644 config/create_gtf.config create mode 100644 config/motif_estimation.config create mode 100644 config/peak_calling.config create mode 100644 nextflow.config diff --git a/config/cluster.config b/config/cluster.config new file mode 100644 index 0000000..e69de29 diff --git a/config/create_gtf.config b/config/create_gtf.config new file mode 100644 index 0000000..e69de29 diff --git a/config/motif_estimation.config b/config/motif_estimation.config new file mode 100644 index 0000000..e69de29 diff --git a/config/peak_calling.config b/config/peak_calling.config new file mode 100644 index 0000000..e69de29 diff --git a/nextflow.config b/nextflow.config new file mode 100644 index 0000000..06ac06e --- /dev/null +++ b/nextflow.config @@ -0,0 +1,15 @@ +createTimeout = 60 + +params { + +} + +env { + path_bin = $workflow.projectDir/bin +} + +includeConfig '$workflow.projectDir/config/peak_calling.config' +includeConfig '$workflow.projectDir/config/1.2.config' +includeConfig '$workflow.projectDir/config/cluster.config' +includeConfig '$workflow.projectDir/config/motif_estimation.config' +includeConfig '$workflow.projectDir/config/create_gtf.config' \ No newline at end of file From eb70872dba4c49e7deff2735af51a6ae1e6e88c8 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 14:10:34 +0100 Subject: [PATCH 061/206] added parameter to config files --- config/motif_estimation.config | 11 +++++++++++ config/peak_calling.config | 5 +++++ 2 files changed, 16 insertions(+) diff --git a/config/motif_estimation.config b/config/motif_estimation.config index e69de29..a00fc86 100644 --- a/config/motif_estimation.config +++ b/config/motif_estimation.config @@ -0,0 +1,11 @@ +params { + //bed_to_clustered_fasta + min_seq = 10 + + //glam2 + motif_min_len = 10 + motif_max_len = 20 + + //tomtom + tomtom_treshold = 0.01 +} \ No newline at end of file diff --git a/config/peak_calling.config b/config/peak_calling.config index e69de29..566925e 100644 --- a/config/peak_calling.config +++ b/config/peak_calling.config @@ -0,0 +1,5 @@ +params{ + window_length = + step = + threshold_footprint_extraction = +} \ No newline at end of file From 820d02f444e278cad759d45b28330b443ba3fa88 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 3 Dec 2018 14:18:05 +0100 Subject: [PATCH 062/206] update config file --- config/peak_calling.config | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/config/peak_calling.config b/config/peak_calling.config index 566925e..e1dbc96 100644 --- a/config/peak_calling.config +++ b/config/peak_calling.config @@ -1,5 +1,6 @@ params{ - window_length = - step = - threshold_footprint_extraction = -} \ No newline at end of file + window_length = 200 + step = 100 + percentage = 0 + output_file = ./call_peaks_output.bed +} From 8a0143b6221883c01de0aae4f55e2127225d2b62 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 3 Dec 2018 14:20:51 +0100 Subject: [PATCH 063/206] adding dependencies needed for call_peak.py --- masterenv.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/masterenv.yml b/masterenv.yml index 72755c4..175f53a 100644 --- a/masterenv.yml +++ b/masterenv.yml @@ -9,4 +9,6 @@ dependencies: - bedtools - python - r-essentials - - r-seqinr \ No newline at end of file + - r-seqinr + - numpy + - pybigWig From 2f49136861d1fe6cf731483f8f3fae1468832fe0 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 3 Dec 2018 14:28:48 +0100 Subject: [PATCH 064/206] final changes in comments --- bin/call_peaks.py | 347 +--------------------------------------------- 1 file changed, 3 insertions(+), 344 deletions(-) diff --git a/bin/call_peaks.py b/bin/call_peaks.py index 3aa77b4..6359ae6 100644 --- a/bin/call_peaks.py +++ b/bin/call_peaks.py @@ -1,6 +1,6 @@ """ -call_peaks uses the uncontinuous score from a bigWig file to estimate peaks +call_peaks uses the uncontinuous score from a bigWig file to estimate footpints within peaks of interest. @author: Anastasiia Petrova @contact: anastasiia.petrova(at)mpi-bn.mpg.de """ @@ -25,7 +25,7 @@ def parse_args(): parser = argparse.ArgumentParser(prog = '', description = textwrap.dedent(''' - This script produces a file with peaks in .bed format from the file with scores in .bigWig format. + This script produces a file with footprints in .bed format from the file with scores in .bigWig format and a corresponding .bed file with peaks of interest. '''), epilog='That is what you need to make this script work for you. Enjoy it') required_arguments = parser.add_argument_group('required arguments') @@ -98,7 +98,7 @@ def make_bed_dictionary(bed_file): logger.info('please make sure that the .bed file has a right format! The exit is forced') sys.exit() -#to save a footprint, find the score and max_pos for this footprint and chech for overlapping with other footprints within the current peak +#to save a footprint, find the score and max_pos for this footprint and check for overlapping with other footprints within the current peak def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start, footprint_end, bonus_info_from_bed): save_current_footprint = False @@ -335,348 +335,7 @@ def main(): logger.removeHandler(ch) logger.info("call_peaks.py was called using these parameters: " + str(vars(args))) - #logger.info(vars(args)) - - bed_dictionary = make_bed_dictionary(args.bed) - all_footprints = find_peaks_from_bw(bed_dictionary, args.bigwig, args.window_length, args.step, args.percentage) - write_to_bed_file(all_footprints, args.output_file) - - logger.info("the number of peaks: " + str(len(bed_dictionary))) - logger.info("the number of footprints: " + str(len(all_footprints))) - - logger.info("call_peaks needed %s minutes to generate the output" % (round((time.time() - start)/60, 2))) - - for handler in logger.handlers: - handler.close() - logger.removeFilter(handler) - -if __name__ == "__main__": - main() -from collections import defaultdict #to create nested dictionaries -import pyBigWig #to work with bigWig files -import textwrap #to print the help message nice - -logger = logging.getLogger('call_peaks') -logger.setLevel(logging.INFO) - -formatter = logging.Formatter("%(asctime)s : %(message)s", "%Y-%m-%d %H:%M") - -def parse_args(): - parser = argparse.ArgumentParser(prog = '', description = textwrap.dedent(''' - - This script produces a file with peaks in .bed format from the file with scores in .bigWig format. - '''), epilog='That is what you need to make this script work for you. Enjoy it') - - required_arguments = parser.add_argument_group('required arguments') - required_arguments.add_argument('--bigwig', help='a bigWig-file with scores', required=True) - required_arguments.add_argument('--bed', help='provide a file with peaks in .bed format', required=True) - - #all other arguments are optional - #parser.add_argument('--output_directory', default='output', const='output', nargs='?', help='output directory, by default ./output/') - parser.add_argument('--output_file', default='call_peaks_output.bed', type=str, help='enter a name for the output file, by default ./call_peaks_output.bed') - parser.add_argument('--window_length', default=200, type=int, help='enter the length for a window, by defauld 200 bp') - parser.add_argument('--step', default=100, type=int, help='enter a step to move the window, by default 100 bp') - parser.add_argument('--percentage', default=10, type=int, help='enter a percentage to be added to background while searching for footprints, by default 10%') - parser.add_argument('--silent', action='store_true', help='while working with data write the information only into ./call_peaks_log.txt') - args = parser.parse_args() - - return args - -#this function is currently unused, but may be used in the future version -def check_directory(directory): - if not os.path.exists(directory): - os.makedirs(directory) - #logger.info('a new directory ' + directory + ' was created') - print('a new directory ' + directory + ' was created') - -#check if the file to remove exists and if so, delete it -def remove_file(file): - if os.path.isfile(file): - os.remove(file) - -#check if the input files exist. We have no possibility to check if the format of the files is right here though -def check_existing_input_files(args): - - #check if the bigWig file exists - if not os.path.isfile(args.bigwig): - print('there is no such bigWig file ' + args.bigwig + ', the exit is forced') - sys.exit() - #check if the bed file exists - if not os.path.isfile(args.bed): - #logger.info('there is no such bed file ' + args.bed_file + ', the exit is forced') - print('there is no such bed file ' + args.bed + ', the exit is forced') - sys.exit() - -#make a dictionary out of the .bed file for easy access to the information from the .bed file -def make_bed_dictionary(bed_file): - - logger.info('reading of the bed file') - - try: #if i can't proceede this file like so, the input was not a .bed file! - bed_dictionary = {} - - with open(bed_file) as read_bed_file: - for bed_line in read_bed_file: - bed_line_array = re.split(r'\t', bed_line.rstrip('\n')) - if bed_line_array[1].isdigit() and bed_line_array[2].isdigit() and int(bed_line_array[1]) <= int(bed_line_array[2]): #in the real bedfile the second column is a start position, and the third column is an end position, so we are checking if these are integers and if the start position is smaller than the end one - key = bed_line_array[0] + ":" + bed_line_array[1] + "-" + bed_line_array[2] - value = [] - for i in range(3, len(bed_line_array)): - value.append(bed_line_array[i]) - - bed_dictionary[key] = value - else: #this is not a bed file, force exit - logger.info('please make sure the input bed file has a right format, the problem occured on the line ' + bed_line) - sys.exit() - - read_bed_file.close() - - return bed_dictionary - - except UnicodeDecodeError: #force exit, if input is not a .bed file - logger.info('please make sure that the .bed file has a right format! The exit is forced') - sys.exit() - -#to save a footprint, find the score and max_pos for this footprint and chech for overlapping with other footprints within the current peak -def save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start, footprint_end, bonus_info_from_bed): - - save_current_footprint = False - - if len(footprint_scores) > 2: #exclude small regions to not work with them - - #calculate the position with the max score. if there are many positions with the same score, save one from the middle - - first_max_pos = footprint_scores.index(max(footprint_scores)) - last_max_pos = first_max_pos #assume that there is only one pos with max score - - #find the region with the highest score - for j in range(first_max_pos, len(footprint_scores)): - if footprint_scores[j] < first_max_pos: - last_max_pos = j - else: - last_max_pos = len(footprint_scores) - - if first_max_pos != last_max_pos: - #find a pos in the middle of these both - max_pos = int((last_max_pos - first_max_pos) / 2) - else: - max_pos = first_max_pos - - #calculate the score for the current footprint as mean of all scores from the bigwig file - footprint_score = np.mean(footprint_scores) - - #checking for existing and overlapping footprints - if len(peak_footprints.keys()) == 0: # hey, this is the first footprint! - save_current_footprint = True - - else: # there are already footprints in this peak, so look for overlaps - for existing_footprint_name in peak_footprints.keys(): - - old_start = peak_footprints[existing_footprint_name]['start'] - old_end = peak_footprints[existing_footprint_name]['end'] - old_score = peak_footprints[existing_footprint_name]['score'] - - if footprint_start >= old_start and footprint_start <= old_end: #the start of the new footprint is between the start and end of an old footprint - if footprint_end > old_end: #the new footprint is not completely inside the old one - #update the information about the existing footprint - footprint_score = (peak_footprints[existing_footprint_name]['score'] + footprint_score) / 2 #find the average of both scores - - peak_footprints[existing_footprint_name]['end'] = footprint_end - peak_footprints[existing_footprint_name]['score'] = footprint_score - #we can not update the max_pos as we do not have the information about scores array of the existing footprint - #else: the new footprint is completely inside the old one, do nothing - save_current_footprint = False - break - - elif footprint_end >= old_start and footprint_end <= old_end: #the end of the new footprint is between the start and end of an old footprint - if footprint_start < old_start: #the new footprint is not completely inside the old one - #update the information about the existing footprint - footprint_score = (peak_footprints[existing_footprint_name]['score'] + footprint_score) / 2 #find the average of both scores - - peak_footprints[existing_footprint_name]['start'] = footprint_start - peak_footprints[existing_footprint_name]['score'] = footprint_score - #else do nothing - save_current_footprint = False - break - - elif footprint_start <= old_start and footprint_end >= old_end: #the old footprint is exactly between the start and end positions of the new footprint - #update the information about the existing footprint - peak_footprints[existing_footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': footprint_end, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} - save_current_footprint = False - break - - else: #so this is a new footprint that has no overlaps with the others - save_current_footprint = True - - if save_current_footprint == True: - #make sure to save this footprint - footprint_name = "footprint_" + str(footprint_count) - - peak_footprints[footprint_name] = peak_footprints.get(footprint_name, {}) - peak_footprints[footprint_name] = {'chromosom': chromosom, 'start': footprint_start, 'end': footprint_end, 'score': footprint_score, 'len': len(footprint_scores), 'bonus': bonus_info_from_bed, 'max_pos': max_pos} - - footprint_count = footprint_count + 1 - - #else do nothing - - return footprint_count, peak_footprints - -#apply slide window searching to estimate regions that are higher than the background and can possibly be footprints -def search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary_entry, step, percentage): - - peak_len = len(scores_in_peak) - parts = [] - parts_positions = [] - - #if necessary divide the peak with help of a sliding window - if peak_len <= window_length: - window_length = peak_len - parts.append(scores_in_peak) - parts_positions.append(0) - else: - pos = 0 - while pos < (peak_len - step): - if (pos + window_length) >= len(scores_in_peak): - part = scores_in_peak[pos:] - else: - part = scores_in_peak[pos:pos + window_length] - - if len(part) != 1: #otherwise it makes no sense to look on the mean within this part and look for footprints - parts.append(part) - parts_positions.append(pos) - - pos = pos + step - - #look in each window and try to save the footprints - for j in range(len(parts)): - window = parts[j] - - #add some percent to the background to avoid the noice we don't want to have - bw_peak_background = np.mean(window) #find the mean of all scores within one peak - part = (percentage*bw_peak_background)/100 #x procent of the background - bw_peak_background = bw_peak_background + part - - check_position = parts_positions[j] #the start position not within the window, but within the peak!!! - footprint_start = check_position #for each footprint - footprint_scores = [] #for each footprint - - #look on each position inside the window - for i in range(len(window)): - position = i + 1 #calculate the relative position for a score - score = window[i] #extract one score from the list - if score >= bw_peak_background: - if position != (check_position + 1): #if this position is not the next with the last position we have checked - #save the last footprint - if check_position != 0: #if this is not the start of the first footprint within this peak - - footprint_count, peak_footprints = save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry) - - #start a new footprint - footprint_start = position - footprint_scores = [] - - check_position = position - - footprint_scores.append(score) #save the current score - check_position = position - - footprint_count, peak_footprints = save_footprint(footprint_count, footprint_scores, peak_footprints, chromosom, footprint_start + peak_start + parts_positions[j], check_position + peak_start + parts_positions[j], bed_dictionary_entry) #save the last footprint - - return peak_footprints, footprint_count - -#use the information provided from the .bed file to look for footprints within the peaks of interest -def find_peaks_from_bw(bed_dictionary, bw_file, window_length, step, percentage): - - logger.info('looking for footprints within peaks') - - try: - footprint_count = 1 - all_footprints = {} - - bw_open = pyBigWig.open(bw_file) - - for header in bed_dictionary: - - peak_footprints = {} - - header_splitted = re.split(r':', header) - chromosom = header_splitted[0] - positions = re.split(r'-', header_splitted[-1]) - peak_start = int(positions[0]) - peak_end = int(positions[1]) - - scores_in_peak = np.nan_to_num(np.array(list(bw_open.values(chromosom, peak_start, peak_end)))) #save the scores to an array - - peak_footprints, footprint_count = search_in_window(peak_footprints, footprint_count, chromosom, peak_start, peak_end, scores_in_peak, window_length, bed_dictionary[header], step, percentage) - - for footprint_name in peak_footprints.keys(): - all_footprints[footprint_name] = all_footprints.get(footprint_name, {}) - all_footprints[footprint_name] = peak_footprints[footprint_name] - - all_footprints = sorted(all_footprints.items(), key = lambda x : (x[1]['chromosom'], x[1]['start']), reverse = False) - - return all_footprints - - except RuntimeError: #if i can't work with the bigwig file like so, it was not a bigwig file! - logger.info('please make sure that the .bigWig file has a right format! The exit is forced') - sys.exit() - -#write the found footprints to the .bed file -def write_to_bed_file(all_footprints, sorted_output_file_name): - output_file_name = "not_sorted_" + sorted_output_file_name #save in the working directory - - header = ["#chr", "start", "end", "name", "score", "len", "max_pos", "bonus_info"] #a header to know what is in the columns - - output_file = open(output_file_name, 'w') #open a file to write - - logger.info("print to the output file") - - output_file.write('\t'.join(header) + '\n') #write the header - - #write each footprint line for line to the output file - for footprint in all_footprints: - output_file.write('\t'.join([footprint[1]['chromosom'], str(footprint[1]['start']), str(footprint[1]['end']), footprint[0], str(round(footprint[1]['score'], 6)), str(footprint[1]['len']), str(footprint[1]['max_pos']), '\t'.join(footprint[1]['bonus'])]) + '\n') - - output_file.close() - - #sort the bed file - logger.info('sorting the output file') - - os.system("(head -n 2 " + output_file_name + " && tail -n +3 " + output_file_name + " | sort -k1,1V -k2,2n -k3,3n) > " + sorted_output_file_name) - - logger.info('remove the non-sorted file') - - remove_file(output_file_name) - -def main(): - - start = time.time() - - args = parse_args() - - check_existing_input_files(args) - #check if there is an existing directory that user gave as input, otherwise create this directory from the path provided from the user - #check_directory(args.output_directory) - - #fh = logging.FileHandler(os.path.join(args.output_directory, "call_peaks_log.txt")) - fh = logging.FileHandler("call_peaks_log.txt") - fh.setLevel(logging.INFO) - fh.setFormatter(formatter) - logger.addHandler(fh) - - ch = logging.StreamHandler() - ch.setLevel(logging.INFO) - ch.setFormatter(formatter) - logger.addHandler(ch) - - #if user do not want to see the information about the status of jobs, remove the handler, that writes to the terminal - if args.silent: - logger.removeHandler(ch) - - logger.info("call_peaks.py was called using these parameters: " + str(vars(args))) - #logger.info(vars(args)) - bed_dictionary = make_bed_dictionary(args.bed) all_footprints = find_peaks_from_bw(bed_dictionary, args.bigwig, args.window_length, args.step, args.percentage) write_to_bed_file(all_footprints, args.output_file) From a48bd8a04e430ed9a630a9cd9a464f66c0a2e8f7 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 14:36:31 +0100 Subject: [PATCH 065/206] added enviroment parameter --- nextflow.config | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/nextflow.config b/nextflow.config index 06ac06e..6f44ba3 100644 --- a/nextflow.config +++ b/nextflow.config @@ -1,15 +1,16 @@ createTimeout = 60 params { - + } env { path_bin = $workflow.projectDir/bin + path_env = $workflow.projectDir/masterenv.yml } includeConfig '$workflow.projectDir/config/peak_calling.config' includeConfig '$workflow.projectDir/config/1.2.config' includeConfig '$workflow.projectDir/config/cluster.config' includeConfig '$workflow.projectDir/config/motif_estimation.config' -includeConfig '$workflow.projectDir/config/create_gtf.config' \ No newline at end of file +includeConfig '$workflow.projectDir/config/create_gtf.config' From 8a369dff331f56027d7c3ea26ecfb88153101c6b Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 14:38:38 +0100 Subject: [PATCH 066/206] removed redundant parameter --- config/peak_calling.config | 1 - 1 file changed, 1 deletion(-) diff --git a/config/peak_calling.config b/config/peak_calling.config index e1dbc96..8cec30d 100644 --- a/config/peak_calling.config +++ b/config/peak_calling.config @@ -2,5 +2,4 @@ params{ window_length = 200 step = 100 percentage = 0 - output_file = ./call_peaks_output.bed } From 476df0c8ac80ce971598273114311fa3f482e5d9 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 14:47:32 +0100 Subject: [PATCH 067/206] added conda; bed input --- pipeline.nf | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index e4d502f..548db47 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -1,30 +1,33 @@ //!/usr/bin/env nextflow Channel.fromPath(params.input).map {it -> [it.simpleName, it]}.set {bigwig_input} +Channel.fromPath(params.bed).set {bed_input} Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan; fa_overlap_2} Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} Channel.fromPath(params.config).set {config} -params.min_seq = 10 +bigwig_input.combine(bed_input).set{footprint_in} process footprint_extraction { + conda "${path_env}" tag{name} input: - set name, file (bigWig) from bigwig_input + set name, file (bigWig), file (bed) from footprint_in output: set name, file ('*.bed') into bed_for_overlap_with_TFBS script: """ - python ${path_bin}/call_peaks.py --bigwig ${bigWig} --bed ${bed} --output_file ${name}_called_peaks.bed --window_length ${params.window_length} --step ${params.step} --threshold ${params.threshold_footprint_extraction} + python ${path_bin}/call_peaks.py --bigwig ${bigWig} --bed ${bed} --output_file ${name}_called_peaks.bed --window_length ${params.window_length} --step ${params.step} --percentage ${params.percentage} """ } //Abfrage ob ausgeführt werden muss. process extract_known_TFBS { + conda "${path_env}" input: file (fasta) from fa_overlap @@ -43,6 +46,7 @@ bed_for_overlap_with_TFBS.combine(known_TFBS_for_overlap).combine(fa_overlap_2). process overlap_with_known_TFBS { + conda "${path_env}" input: set file (bed_footprints), file (bed_motifs), file (fasta) from for_overlap @@ -59,6 +63,7 @@ process overlap_with_known_TFBS { process clustering { + conda "${path_env}" input: file (fasta) from FASTA_for_clustering @@ -74,6 +79,7 @@ process clustering { // Converting BED-File to one FASTA-File per cluster process bed_to_clustered_fasta { + conda "${path_env}" tag{name} publishDir '/mnt/agnerds/Rene.Wiegandt/10_Master/tmp/', mode: 'copy' @@ -98,6 +104,7 @@ fasta_for_glam2 = fasta_for_glam2.flatten().map {it -> [it.simpleName, it]} //Running GLAM2 on FASTA-files. //Generating Motifs through alignment and scoring best local matches. process glam2 { + conda "${path_env}" tag{name} @@ -117,6 +124,7 @@ process glam2 { //Running Tomtom on meme-files generated by GLAM2. //Tomtom searches motifs in databases. process tomtom { + conda "${path_env}" tag{name} @@ -165,6 +173,7 @@ process check_for_unknown_motifs { //Get the best(first) Motif from each MEME-file process get_best_motif { + conda "${path_env}" input: set name, file(meme), file(tsv) from meme_for_scan @@ -183,6 +192,7 @@ best_motif.combine(fa_scan).set {files_for_genome_scan} process genome_scan { + conda "${path_env}" input: set name, file(meme), file(fasta) from files_for_genome_scan @@ -211,6 +221,7 @@ process cluster_quality { process create_GTF { + conda "${path_env}" output: file ('*.gtf') into gtf_for_uropa From a5259fd25ad535a719cd4384744fc2eb732244e1 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 14:59:34 +0100 Subject: [PATCH 068/206] added parameter to pipeline --- pipeline.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 548db47..215ba10 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -116,7 +116,7 @@ process glam2 { script: """ - glam2 n ${fasta} -O . -a 10 -b 20 -z 5 + glam2 n ${fasta} -O . -a ${params.motif_min_len} -b ${params.motif_max_len} -z 5 """ } @@ -138,7 +138,7 @@ process tomtom { script: """ - tomtom ${meme} ${jaspar_db} -thresh 0.01 -text --norc | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv + tomtom ${meme} ${jaspar_db} -thresh ${params.tomtom_treshold} -text --norc | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv """ } From 43b5d98731c7ef9fac852f0e4e7d9638338acc22 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 15:02:10 +0100 Subject: [PATCH 069/206] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c04ff5b..d8ac4eb 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ source activate masterenv ## Quick Start ```console -nextflow run pipeline.nf --input [INPUT-file] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] --config uropa.config --conda [path to conda enviroment] +nextflow run pipeline.nf --input [INPUT-file] --bed [INPUT-bed] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] --config uropa.config --conda [path to conda enviroment] ``` ## Parameter From 3fd48cc821b0ed04a081a8f8954e28cb6649a8a6 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 3 Dec 2018 15:03:44 +0100 Subject: [PATCH 070/206] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d8ac4eb..bcf6309 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ source activate masterenv ## Quick Start ```console -nextflow run pipeline.nf --input [INPUT-file] --bed [INPUT-bed] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] --config uropa.config --conda [path to conda enviroment] +nextflow run pipeline.nf --input [INPUT-file] --bed [INPUT-bed] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] --config uropa.config ``` ## Parameter From 6ec4a85ddcb3cae2147c39d28273d62cc30ce662 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 4 Dec 2018 10:07:43 +0100 Subject: [PATCH 071/206] delete unused logger statements --- bin/call_peaks.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/bin/call_peaks.py b/bin/call_peaks.py index 6359ae6..24ef880 100644 --- a/bin/call_peaks.py +++ b/bin/call_peaks.py @@ -47,7 +47,6 @@ def parse_args(): def check_directory(directory): if not os.path.exists(directory): os.makedirs(directory) - #logger.info('a new directory ' + directory + ' was created') print('a new directory ' + directory + ' was created') #check if the file to remove exists and if so, delete it @@ -64,7 +63,6 @@ def check_existing_input_files(args): sys.exit() #check if the bed file exists if not os.path.isfile(args.bed): - #logger.info('there is no such bed file ' + args.bed_file + ', the exit is forced') print('there is no such bed file ' + args.bed + ', the exit is forced') sys.exit() @@ -350,4 +348,4 @@ def main(): logger.removeFilter(handler) if __name__ == "__main__": - main() \ No newline at end of file + main() From 86f762c9f47e5bf0bc4590169116128ee474c9a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Tue, 4 Dec 2018 04:08:38 -0500 Subject: [PATCH 072/206] overlap_with_known_TFBS: input/output changes --- pipeline.nf | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 215ba10..25b6be5 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -49,14 +49,15 @@ process overlap_with_known_TFBS { conda "${path_env}" input: - set file (bed_footprints), file (bed_motifs), file (fasta) from for_overlap + set file (bed_footprints), val (bed_motifs), file (fasta) from for_overlap output: - file ('*.FASTA') into FASTA_for_clustering + file ('*.bed') into bed_for_clustering script: + motif_list = bed_motifs.toString().replaceAll(/\s|\[|\]/,"") """ - ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${bed_motifs} --fasta ${fasta} -o ${name_placeholder} -min ${params.min_size_fp} -max ${params.max_size_fp} + ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_list} --fasta ${fasta} -o ${name_placeholder} -min ${params.min_size_fp} -max ${params.max_size_fp} """ } @@ -66,7 +67,7 @@ process clustering { conda "${path_env}" input: - file (fasta) from FASTA_for_clustering + file (bed) from FASTA_for_clustering output: set name, file ('*.bed') into bed_for_motif_esitmation From f2344b6c74329a6a26b22135e6d0996ec9bfff44 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Tue, 4 Dec 2018 10:13:46 +0100 Subject: [PATCH 073/206] add bed sequence reduction script --- bin/reduce_bed.R | 237 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 237 insertions(+) create mode 100644 bin/reduce_bed.R diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R new file mode 100644 index 0000000..cfa9766 --- /dev/null +++ b/bin/reduce_bed.R @@ -0,0 +1,237 @@ +#! /bin/Rscript +library("optparse") + +option_list <- list( + make_option(opt_str = c("-i", "--input"), default = NULL, help = "Input bed-file. Last column must be sequences.", metavar = "character"), + make_option(opt_str = c("-k", "--kmer"), default = 10, help = "Kmer length. Default = %default", metavar = "integer"), + make_option(opt_str = c("-m", "--motif"), default = 10, help = "Estimated motif length. Default = %default", metavar = "integer"), + make_option(opt_str = c("-o", "--output"), default = "reduced.bed", help = "Output file. Default = %default", metavar = "character"), + make_option(opt_str = c("-t", "--threads"), default = 1, help = "Number of threads to use. Use -1 for all available cores. Default = %default", metavar = "integer"), + make_option(opt_str = c("-c", "--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical"), + make_option(opt_str = c("-s", "--min_seq_length"), default = NULL, help = "Remove sequences below this length. Defaults to motif length.", metavar = "integer", type = "integer") + # TODO more args +) + +opt_parser <- OptionParser(option_list = option_list, + description = "Reduce sequences to frequent regions.") + +opt <- parse_args(opt_parser) + +#' Reduce bed file to conserved regions +#' +#' @param input bed file +#' @param kmer Length of kmer. +#' @param motif Estimated motif length. +#' @param output Output file +#' @param threads Number of threads. +#' @param clean Delete all temporary files. +#' @param minoverlap_kmer Minimum required overlap between kmers. # TODO +#' @param minoverlap_motif Minimum required overlap between motif and kmer. # TODO +#' @param min_seq_length Must be smaller or equal to kmer and motif. Default = motif. +#' +#' @return reduced bed +#' TODO check whether jellyfish is installed +reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", threads = NULL, clean = TRUE, minoverlap_kmer, minoverlap_motif, min_seq_length = motif) { + # get number of available cores + if (threads == -1) { + threads <- parallel::detectCores() + } + + message("Loading bed...") + # load bed + # columns: chr, start, end, name, ..., sequence + bed_table <- data.table::fread(input = input, header = FALSE) + names(bed_table)[1:4] <- c("chr", "start", "end", "name") + names(bed_table)[ncol(bed_table)] <- "sequence" + # index + data.table::setkey(bed_table, name, physical = FALSE) + + # check for duplicated names + if (anyDuplicated(bed_table[, "name"])) { + warning("Found duplicated names. Making names unique.") + bed_table[, name := make.unique(name)] + } + + # remove sequences below minimum length + total_rows <- nrow(bed_table) + bed_table <- bed_table[nchar(sequence) < min_seq_length] + if (total_rows > nrow(bed_table)) { + message("Removed ", total_rows - nrow(bed_table), " sequence(s) below minimum length of ", min_seq_length) + } + + # TODO forward fasta file as parameter so no bed -> fasta conversion is needed. + message("Writing fasta...") + # save as fasta + fasta_file <- paste0(basename(input), ".fasta") + seqinr::write.fasta(sequences = as.list(bed_table[[ncol(bed_table)]]), names = bed_table[[4]], as.string = TRUE, file.out = fasta_file) + + message("Counting kmer...") + # count k-mer + hashsize <- 4 ^ kmer + count_output_binary <- "mer_count_binary.jf" + input <- fasta_file + jellyfish_call <- paste("jellyfish count ", "-m", kmer, "-s", hashsize, "-o", count_output_binary, input) + + system(command = jellyfish_call, wait = TRUE) + + mer_count_table <- "mer_count_table.jf" + jellyfish_dump_call <- paste("jellyfish dump --column --tab --output", mer_count_table, count_output_binary) + + system(command = jellyfish_dump_call, wait = TRUE) + + message("Reduce kmer.") + # load mer table + # columns: kmer, count + kmer_counts <- data.table::fread(input = mer_count_table, header = FALSE) + # order kmer descending + data.table::setorder(kmer_counts, -V2) + + # compute number of hits to keep + keep_hits <- significant_kmer(bed_table, kmer = kmer, motif = motif) + + # reduce kmer + reduced_kmer <- reduce_kmer(kmer = kmer_counts, keep_hits) + + message("Find kmer in sequences.") + # find k-mer in sequences + # TODO minoverlap as parameter + # columns: name, start, end, width + ranges_table <- find_kmer_regions(bed = bed_table, kmer_counts = reduced_kmer, minoverlap = kmer - 1, threads = threads) + names(ranges_table)[1:2] <- c("relative_start", "relative_end") + + # merge ranged_table with bed_table + keep column order + merged <- merge(x = bed_table, y = ranges_table, by = "name", sort = FALSE)[, union(names(bed_table), names(ranges_table)), with = FALSE] + + # delete sequences without hit + merged <- na.omit(merged, cols = c("relative_start", "relative_end")) + message("Removed ", nrow(bed_table) - nrow(merged), " sequence(s) without hit.") + + message("Reduce sequences.") + # create subsequences + merged[, sequence := stringr::str_sub(sequence, relative_start, relative_end)] + + # bed files count from 0 + merged[, `:=`(relative_start = relative_start - 1, relative_end = relative_end - 1)] + # change start end location + merged[, `:=`(start = start + relative_start, end = start + relative_end)] + + # clean table + merged[, `:=`(relative_start = NULL, relative_end = NULL, width = NULL)] + + if (clean) { + file.remove(fasta_file, count_output_binary, mer_count_table) + } + + data.table::fwrite(merged, file = output, sep = "\t", col.names = FALSE) +} + +#' returns sum of top x kmer frequencies to keep +#' +#' @param bed Bed table with sequences in last column +#' @param kmer Length of kmer +#' @param motif Length of motif +#' @param minoverlap Minimum number of bases overlapping between kmer and motif. Must be <= motif & <= kmer. Defaults to ceiling(motif / 2). +significant_kmer <- function(bed, kmer, motif, minoverlap = ceiling(motif / 2)) { + if (minoverlap > kmer || minoverlap > motif) { + stop("Kmer & motif must be greater or equal than minoverlap!") + } + + # minimum sequence length to get all interesting overlaps + min_seq_length <- motif + 2 * (kmer - minoverlap) + + seq_lengths <- nchar(bed[[ncol(bed)]]) + + # reduce to max interesting length + seq_lengths <- ifelse(seq_lengths > min_seq_length, min_seq_length, seq_lengths) + + # calculate max possible kmer + topx <- sum(seq_lengths - kmer + 1) + + return(topx) +} + +#' @param kmer Kmer table +#' @param significant +reduce_kmer <- function(kmer, significant) { + kmer[, cumsum := cumsum(V2)] + + return(kmer[cumsum <= significant]) +} + +#' create list of significant ranges (one for each bed entry) +#' +#' @param bed Data.table of bed with sequence in last column +#' @param kmer_counts Data.table of counted kmer. Column1 = kmer, column2 = count. +#' @param minoverlap Minimum overlapping nucleotides between kmers to be merged. Positive integer. Must be smaller than kmer length. +#' @param threads Number of threads. +#' +#' @return Data.table with relative positions and width (start, end, width). +find_kmer_regions <- function(bed, kmer_counts, minoverlap = 1 , threads = NULL) { + if (nchar(kmer_counts[1, 1]) <= minoverlap) { + stop("Minoverlap must be smaller than kmer length!") + } + + names(kmer_counts)[1:2] <- c("kmer", "count") + data.table::setorder(kmer_counts, -count) + + seq_ranges <- pbapply::pblapply(seq_len(nrow(bed)), cl = threads, function(x) { + seq <- bed[x][[ncol(bed)]] + + #### locate ranges + ranges <- data.table::data.table(do.call(rbind, stringi::stri_locate_all_fixed(seq, pattern = kmer_counts[[1]]))) + + ranges <- na.omit(ranges, cols = c("start", "end")) + + if (nrow(ranges) < 1) { + return(data.table::data.table(start = NA, end = NA, width = NA)) + } + + # add kmer sequences + ranges[, sub_seq := stringr::str_sub(seq, start, end)] + # add kmer count + ranges[, count := kmer_counts[ranges[["sub_seq"]], "count", on = "kmer"]] + + #### reduce ranges + reduced_ranges <- IRanges::IRanges(start = ranges[["start"]], end = ranges[["end"]], names = ranges[["sub_seq"]]) + + # list of overlapping ranges + edge_list <- as.matrix(IRanges::findOverlaps(reduced_ranges, minoverlap = minoverlap, drop.self = FALSE, drop.redundant = TRUE)) + + # get components (groups of connected ranges) + graph <- igraph::graph_from_edgelist(edge_list, directed = FALSE) + # vector of node membership (indices correspond to ranges above) + member <- as.factor(igraph::components(graph)$membership) + + # list of membership vectors + node_membership <- lapply(levels(member), function(x) { + which(member == x) + }) + + # calculate component score (= sum of kmer count) + score <- vapply(node_membership, FUN.VALUE = numeric(1), function(x) { + sum(kmer_counts[x, "count"]) + }) + + selected_ranges <- node_membership[[which(score == max(score))[1]]] + + # reduce selected ranges + reduced_ranges <- IRanges::reduce(reduced_ranges[selected_ranges]) + + reduced_ranges <- data.table::as.data.table(reduced_ranges) + + return(reduced_ranges) + }) + + # create ranges table + conserved_regions_table <- data.table::rbindlist(seq_ranges) + conserved_regions_table[, name := bed[[4]]] + + return(conserved_regions_table) +} + +# call function with given parameter if not in interactive context (e.g. run from shell) +if (!interactive()) { + # remove last parameter (help param) + params <- opt[-length(opt)] + do.call(reduce_bed, args = params) +} From ab887422a29ce13da8c95039d851c68cbd5edf48 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Tue, 4 Dec 2018 10:14:22 +0100 Subject: [PATCH 074/206] add cdhit wrapper script --- bin/cdhit_wrapper.R | 75 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 bin/cdhit_wrapper.R diff --git a/bin/cdhit_wrapper.R b/bin/cdhit_wrapper.R new file mode 100644 index 0000000..fd2ce49 --- /dev/null +++ b/bin/cdhit_wrapper.R @@ -0,0 +1,75 @@ +#! /bin/Rscript +library("optparse") + +option_list <- list( + make_option(opt_str = c("-i", "--input"), default = NULL, help = "Input bed-file. Last column must be sequences.", metavar = "character"), + make_option(opt_str = c("-s", "--similarity"), default = 0.8, help = "Similarity threshold. Default = %default", metavar = "double >= 0.8"), + make_option(opt_str = c("-A", "--coverage"), default = 8, help = "Minimal alignment length for both sequences in nucelotides. Default = %default", metavar = "integer"), + make_option(opt_str = c("-o", "--output"), default = "cluster.bed", help = "Output file. Default = %default", metavar = "character"), + make_option(opt_str = c("-c", "--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical") + # TODO more args +) + +opt_parser <- OptionParser(option_list = option_list, + description = "Reduce sequences to frequent regions.") + +opt <- parse_args(opt_parser) + +#' cd-hit wrapper +#' +#' @param input +#' @param similarity cdhit = -c +#' @param coverage In Nucleotides. cdhit = -A +#' @param output Clustered bedfile. Adds cluster number in last column (lower number = bigger cluster). +#' @param clean Clean up after run. +#' +#' @return bed_table with cluster in last column +#' TODO add all cdhit parameter +#' TODO check whether cdhit is installed +cdhitest <- function(input, similarity = 0.8, coverage = 8, output = "cluster.bed", clean = TRUE) { + # load bed if neccessary + if (!data.table::is.data.table(input)) { + bed_table <- data.table::fread(input = input, header = FALSE) + } else { + bed_table <- input + } + + ### convert bed to fasta + # 4th column = name + # last column = sequence + fasta_file <- "converted_bed.fasta" + seqinr::write.fasta(sequences = as.list(bed_table[[ncol(bed_table)]]), names = bed_table[[4]], as.string = TRUE, file.out = fasta_file) + + ### cd-hit-est + cdhit_output <- "cdhit_output" + cdhit_call <- paste("cd-hit-est -i", fasta_file, "-o", cdhit_output, "-c", similarity, "-A", coverage, "-G 0 -n 3 -g 1 -r 0 -l 5 -sc 1") + + system(command = cdhit_call, wait = TRUE) + + # reformat cluster file + # columns: id, clstr, clstr_size, length, clstr_rep, clstr_iden, clstr_cov + cluster_file <- "reformated.clstr" + cluster_call <- paste("clstr2txt.pl", paste0(cdhit_output, ".clstr"), ">", cluster_file) + + system(command = cluster_call, wait = TRUE) + + # load reformated file + cluster <- data.table::fread(cluster_file) + + ### add cluster to bed_table + result <- merge(x = bed_table, y = cluster[, c("id", "clstr")], by.x = "V4", by.y = "id", sort = FALSE)[, union(names(bed_table), names(cluster)[2]), with = FALSE] + + # delete files + if (clean) { + file.remove(fasta_file, paste0(cdhit_output, ".clstr"), cdhit_output, cluster_file) + } + + data.table::fwrite(x = result, file = output, sep = "\t", col.names = FALSE) +} + +# call function with given parameter if not in interactive context (e.g. run from shell) +if (!interactive()) { + # remove last parameter (help param) + params <- opt[-length(opt)] + do.call(cdhitest, args = params) +} From 606485e1171250346f8fb3a1597db332a7d076e5 Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 11:18:12 +0100 Subject: [PATCH 075/206] Inital commit ! -> Migration to new project --- .gitignore | 172 +++++++++++++++++ Modules/Ensembl/ActivityCategorizer.py | 103 ++++++++++ Modules/Ensembl/ActivityTable.py | 48 +++++ Modules/Ensembl/ActivityTableGenerator.py | 21 ++ Modules/Ensembl/Ensembl.py | 25 +++ Modules/Ensembl/FTPHandling/FTPEntry.py | 27 +++ Modules/Ensembl/FTPHandling/URLRetrieve.py | 36 ++++ Modules/Ensembl/FTPHandling/VersionChecker.py | 99 ++++++++++ Modules/Ensembl/FTPHandling/__init__.py | 0 Modules/Ensembl/GTFGen.py | 71 +++++++ Modules/Ensembl/__init__.py | 0 Modules/Ensembl/checksums.py | 27 +++ Modules/SaveResults.py | 19 ++ Modules/Uniquifier.py | 34 ++++ Modules/__init__.py | 0 Modules/ucsc/__init__.py | 0 Modules/ucsc/bigBedToBed | Bin 0 -> 5893760 bytes Modules/ucsc/ucsc.py | 90 +++++++++ RegGTFExtractor.py | 29 +++ config/celltypes_homo_sapiens.json | 179 ++++++++++++++++++ config/celltypes_mus_musculus.json | 179 ++++++++++++++++++ 21 files changed, 1159 insertions(+) create mode 100644 .gitignore create mode 100644 Modules/Ensembl/ActivityCategorizer.py create mode 100644 Modules/Ensembl/ActivityTable.py create mode 100644 Modules/Ensembl/ActivityTableGenerator.py create mode 100644 Modules/Ensembl/Ensembl.py create mode 100644 Modules/Ensembl/FTPHandling/FTPEntry.py create mode 100644 Modules/Ensembl/FTPHandling/URLRetrieve.py create mode 100644 Modules/Ensembl/FTPHandling/VersionChecker.py create mode 100644 Modules/Ensembl/FTPHandling/__init__.py create mode 100644 Modules/Ensembl/GTFGen.py create mode 100644 Modules/Ensembl/__init__.py create mode 100644 Modules/Ensembl/checksums.py create mode 100644 Modules/SaveResults.py create mode 100644 Modules/Uniquifier.py create mode 100644 Modules/__init__.py create mode 100644 Modules/ucsc/__init__.py create mode 100755 Modules/ucsc/bigBedToBed create mode 100644 Modules/ucsc/ucsc.py create mode 100755 RegGTFExtractor.py create mode 100644 config/celltypes_homo_sapiens.json create mode 100644 config/celltypes_mus_musculus.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..dd76273 --- /dev/null +++ b/.gitignore @@ -0,0 +1,172 @@ +# Created by .ignore support plugin (hsz.mobi) +### Python template +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +### JetBrains template +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/modules.xml +# .idea/*.iml +# .idea/modules + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/httpRequests + +/EnsemblData/release-94/ +/UCSCData/hg38.bed +/UCSCData/mm10.bed +/results/homo_sapiens_filtered.gtf diff --git a/Modules/Ensembl/ActivityCategorizer.py b/Modules/Ensembl/ActivityCategorizer.py new file mode 100644 index 0000000..8fee867 --- /dev/null +++ b/Modules/Ensembl/ActivityCategorizer.py @@ -0,0 +1,103 @@ +import json +import os + + +class ActivityCategorizer: + + def __init__(self, release, organism): + + # List of all Folders with Activity Tables + + self.folderlist = [] + + # Dictionary from celltypes_organism.json mit key = Kategorie und Value = [Ordner] + + self.c_dict = self.read_config(organism) + + # Activity table from all files as dict + + self.activity = {} + + self.get_activity_data(release, organism) + + # Categorized Activity from Json-config + print("Categorization: This may take a while") + self.categorization = self.generate_categorized_activity() + + print("Categorization finished !") + + def get_categorization(self): + return self.categorization + + def read_config(self, organism): + + c_dict = {} + path_to_config = os.path.join("./config/celltypes_"+organism+".json") + with open(path_to_config) as input: + data = json.loads(input.read()) + for x in data: + c_dict[x["type"]] = x["alias_ensembl"] + self.folderlist.extend(x["alias_ensembl"]) + + return c_dict + + def get_activity_data(self, release, organism): + + for folder in self.folderlist: + # Generate path to binary File + file = os.path.join("./EnsemblData", release, organism, "activity", folder, "table.bin") + with open(file, "rb") as tables: + self.activity[folder] = bytearray(tables.read()) + + def generate_categorized_activity(self): + category_activity = {} + + for category, aliases in self.c_dict.items(): + + # If an alias exists + + if aliases: + + # If theres only one alias + + if len(aliases) == 1: + category_activity[category] = self.activity[aliases[0]] + + # If there are multiple alias + + else: + category_activity[category] = self.activity_comparator(aliases) + + # If theres no alias all bytes were set to 4 = NA + + else: + category_activity[category] = bytearray([4]*len(self.activity[self.folderlist[0]])) + + return category_activity + + def activity_comparator(self, aliaslist): + + concatenated_array = bytearray([]) + + length = len(self.activity[aliaslist[0]]) + input_arrays = [self.activity[x] for x in aliaslist] + for x in range(length): + if any(y[x] == 0 for y in input_arrays): + concatenated_array.append(0) + elif any(y[x] == 1 for y in input_arrays): + concatenated_array.append(1) + elif any(y[x] == 2 for y in input_arrays): + concatenated_array.append(2) + elif any(y[x] == 3 for y in input_arrays): + concatenated_array.append(3) + elif any(y[x] == 4 for y in input_arrays): + concatenated_array.append(4) + return concatenated_array + + +# Debugging + +# e = ActivityCategorizer("../../config/celltypes_human.json", "release-94", "homo_sapiens") +# print(len(e.categorization)) +# for x in e.categorization.values(): +# print(len(x)) \ No newline at end of file diff --git a/Modules/Ensembl/ActivityTable.py b/Modules/Ensembl/ActivityTable.py new file mode 100644 index 0000000..042421a --- /dev/null +++ b/Modules/Ensembl/ActivityTable.py @@ -0,0 +1,48 @@ +import os.path +from Modules.Ensembl.ActivityTableGenerator import ATGenerator + + +class ActivityTable: + + """ + Class for checking activity_table and generating them. + ActivityTable = Byte Representation of Activity Status + corresponding to the generator Schema default: + 0, "activity=ACTIVE", + 1, "activity=POISED", + 2, "activity=REPRESSED", + 3, "activity=INACTIVE", + 4, "activity=NA" + """ + + def __init__(self, organism, current_release): + self.link = os.path.join("./EnsemblData/", current_release, organism, "activity") + self.folders = next(os.walk(self.link))[1] + self.generator = ATGenerator(["activity=ACTIVE", + "activity=POISED", + "activity=REPRESSED", + "activity=INACTIVE", + "activity=NA"]) + + def check_and_generate_activity_table(self): + for subfolder in self.folders: + folder_link = os.path.join(self.link, subfolder) + sf_link = os.path.join(folder_link, "table.bin") + if not os.path.isfile(sf_link): + print("No ActivityTable for "+subfolder+" found, generating new one.") + self.generate_table(folder_link) + print("All ActivityTables found, proceeding") + + def generate_table(self, link): + for root, dirs, files in os.walk(link): + for file in files: + if file.endswith(".gff.gz"): + originpath = os.path.join(root, file) + file_path = os.path.join(root, "table.bin") + with open(file_path, "wb") as f: + f.write(self.generator.read_table(originpath)) + print("New ActivityTable generated in: " + root) +# Debug + +#e = ActivityTable("homo_sapiens", "release-94") +#e.check_and_generate_activity_table() \ No newline at end of file diff --git a/Modules/Ensembl/ActivityTableGenerator.py b/Modules/Ensembl/ActivityTableGenerator.py new file mode 100644 index 0000000..2c2cff6 --- /dev/null +++ b/Modules/Ensembl/ActivityTableGenerator.py @@ -0,0 +1,21 @@ +import gzip + + +class ATGenerator: + + def __init__(self, repre): + + self.representation = repre + + def read_table(self, file): + activity_table = [] + with gzip.open(file, 'rb') as f: + for line in f: + for index, re in enumerate(self.representation): + if re in str(line): + activity_table.append(index) + break + return bytearray(activity_table) + + + diff --git a/Modules/Ensembl/Ensembl.py b/Modules/Ensembl/Ensembl.py new file mode 100644 index 0000000..df9cbc0 --- /dev/null +++ b/Modules/Ensembl/Ensembl.py @@ -0,0 +1,25 @@ +from Modules.Ensembl.ActivityTable import ActivityTable +from Modules.Ensembl.FTPHandling.VersionChecker import EnsemblRegulationFTPRetriever as FTPRetriever +from Modules.Ensembl.ActivityCategorizer import ActivityCategorizer +from Modules.Ensembl.GTFGen import GTFGen + + +class Ensembl: + + def __init__(self, organism): + print("Starting Ensembl") + self.updater = FTPRetriever(organism) + self.release = self.updater.get_release() + self.acttable = ActivityTable(organism, self.release) + self.acttable.check_and_generate_activity_table() + self.categorizer = ActivityCategorizer(self.release, organism) + print("Generating GTF") + self.gtf_generator = GTFGen(organism, self.release) + + print("Ensembl Finished !") + + def get_gtf(self): + return self.gtf_generator.get_gtf(self.release, self.categorizer.get_categorization()) + +#e = Ensembl("homo_sapiens") +#print(len(e.categorizer.categorization)) \ No newline at end of file diff --git a/Modules/Ensembl/FTPHandling/FTPEntry.py b/Modules/Ensembl/FTPHandling/FTPEntry.py new file mode 100644 index 0000000..0a90080 --- /dev/null +++ b/Modules/Ensembl/FTPHandling/FTPEntry.py @@ -0,0 +1,27 @@ +import ftplib + + +# Class to determine if a Ftp-path is file or directory. + + +class FTPEntry: + + def __init__(self, filename, ftpobj, startingdir=None): + self.filename = filename + if startingdir is None: + startingdir = ftpobj.pwd() + try: + ftpobj.cwd(filename) + self.filetype = 'd' + ftpobj.cwd(startingdir) + except ftplib.error_perm: + self.filetype = 'f' + + def gettype(self): + return self.filetype + + def getfilename(self): + return self.filename + + def __repr__(self): + return self.filename, self.filetype diff --git a/Modules/Ensembl/FTPHandling/URLRetrieve.py b/Modules/Ensembl/FTPHandling/URLRetrieve.py new file mode 100644 index 0000000..598a6f5 --- /dev/null +++ b/Modules/Ensembl/FTPHandling/URLRetrieve.py @@ -0,0 +1,36 @@ +import ftplib +from Modules.Ensembl.FTPHandling.FTPEntry import FTPEntry + + +class FTPHandler: + + def __init__(self, url, wd): + self.ftp = ftplib.FTP(url) + self.ftp.login() + self.ftp.cwd(wd) + + def change_dir(self, wd): + self.ftp.cwd(wd) + + def get_all_entries(self): + return self.ftp.nlst() + + def get_all_entries_from_dir(self, dir): + self.change_dir(dir) + return self.get_all_entries() + + def get_all_entries_as_FTPEntry(self): + # Get All Files + files = self.ftp.nlst() + return [FTPEntry(item, self.ftp, self.ftp.pwd()) for item in files] + + def save_entries_to_file(self, origin, target): + self.change_dir(origin) + for file in self.get_all_entries_as_FTPEntry(): + if file.gettype() == "f": + # Download only Checksum & gff.gz files + if file.getfilename() not in ["README", "manifest.tsv"]: + print("Downloading....... > " + file.getfilename()) + self.ftp.retrbinary("RETR " + file.getfilename(), open(target + "/" + file.getfilename(), 'wb').write) + + diff --git a/Modules/Ensembl/FTPHandling/VersionChecker.py b/Modules/Ensembl/FTPHandling/VersionChecker.py new file mode 100644 index 0000000..874e776 --- /dev/null +++ b/Modules/Ensembl/FTPHandling/VersionChecker.py @@ -0,0 +1,99 @@ +from Modules.Ensembl.FTPHandling.URLRetrieve import FTPHandler +import os.path + + +class EnsemblRegulationFTPRetriever: + + """ + Class for checking current version locally and remote on ftp. + And downloading newest version if necessary + """ + + def __init__(self, organism): + self.site_ftp = FTPHandler("ftp.ensembl.org", "pub") + self.remoteversion = self.get_current_ftp_version() + self.localversion = self.get_current_local_version() + if self.check_version_difference(organism): + self.download_currentversion_version(self.remoteversion, organism) + else: + print("Newest Version installed, no update needed.") + + def get_release(self): + return self.remoteversion + + def get_current_ftp_version(self): + entries = self.site_ftp.get_all_entries() + versionlist = [] + for entry in entries: + if "release" in entry: + versionlist.append(entry) + c_release = sorted(versionlist, reverse=True)[0] + print("Current release is "+c_release) + return c_release + + def check_organism(self, organism, release): + if organism in next(os.walk("./EnsemblData/"+release+"/"))[1]: + return False + else: + print("No Local Version for "+organism+" installed. Installing...") + return True + + def get_current_local_version(self): + directories = next(os.walk("./EnsemblData/"))[1] + for dir in directories: + if "release" in dir: + localversion = sorted(directories, reverse=True)[0] + print("Local Version found: " + localversion) + return localversion + else: + print("No Version installed !") + return None + print("No Version installed !") + return None + + def check_version_difference(self, organism): + + local_version = self.localversion + remote_version = self.remoteversion + if local_version is None: + return True + remote_nr = int(remote_version.split("-")[1]) + local_nr = int(local_version.split("-")[1]) + + if remote_nr > local_nr: + print("Outdated Version detected ! local: " + local_version + " remote: " + remote_version) + return True + else: + if self.check_organism(organism, local_version): + return True + else: + return False + + def download_currentversion_version(self, version, organism): + + # Download Base File + + targetfolder = os.path.join("./EnsemblData/", version, organism) + os.makedirs(targetfolder) + folder_url = "/pub/"+version+"/regulation/"+organism+"/" + self.site_ftp.change_dir(folder_url) + self.site_ftp.save_entries_to_file(folder_url, targetfolder) + + # Download Regulation Activity + + activityfolder_local = os.path.join(targetfolder, "activity") # local Folder for Activity Data + activityfolder_remote = folder_url+"RegulatoryFeatureActivity/" # remote (ftp) folder for activity data + os.mkdir(activityfolder_local) # Create New Folder + + celltypes_list = self.site_ftp.get_all_entries_from_dir(activityfolder_remote) # Get List for all entries in activity Folder + + # Iterate over Celltype List and Download in corresponding subfolder + + for celltype in celltypes_list: + link_local = os.path.join(activityfolder_local, celltype) + link_origin = activityfolder_remote+"/"+celltype + os.mkdir(link_local) + self.site_ftp.save_entries_to_file(link_origin, link_local) + + +#e = EnsemblRegulationFTPRetriever("mus_musculus") \ No newline at end of file diff --git a/Modules/Ensembl/FTPHandling/__init__.py b/Modules/Ensembl/FTPHandling/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/Modules/Ensembl/GTFGen.py b/Modules/Ensembl/GTFGen.py new file mode 100644 index 0000000..a4de58a --- /dev/null +++ b/Modules/Ensembl/GTFGen.py @@ -0,0 +1,71 @@ +import os +import gzip +import csv + + +class GTFGen: + + def __init__(self, organism, release): + + self.gff_lines = self.get_organism_as_gff(organism, release) + self.value_map = {0: "ACTIVE", 1: "POISED", 2: "REPRESSED", 3: "INACTIVE", 4: "NA"} + + def get_organism_as_gff(self, organism, release): + + directory = os.path.join("./EnsemblData/", release, organism) + inputfile = "" + for file in os.listdir(directory): + if file.endswith("gff.gz"): + inputfile = os.path.join(directory, file) + + with gzip.open(inputfile) as original_file: + return original_file.readlines() + + def reformat_to_gff(self, activity, release): + + gtf_return = [] + + for index, line in enumerate(self.gff_lines): + + decoded_line = line.decode("UTF-8") + # Generate a templist + templist = [] + # Split Line by Tab + splitted = decoded_line.split("\t") + # Split Last Field by ";" + splitted_additional = splitted[-1].strip().split(";") + # Add Chromosome Name Format = chr+Name + templist.append("chr"+splitted[0]) + # Add RegBuild_ + release + templist.append("RegBuild_"+release) + # Add Description from Description in last ; separated segment + templist.append(splitted_additional[4].split("=")[1]) + # Add Start / End Data from original + templist.extend(splitted[3:5]) + # Add Score, Strand and Frame Data + templist.extend([".", "+", "."]) + # Add "additional" information + + templist.append(self.generate_additional_information(splitted_additional[0], + self.generate_activity_list(activity, index))) + + gtf_return.append(templist) + + return gtf_return + + @staticmethod + def generate_additional_information(id, activity): + return "; ".join([id, "activity="+", ".join(activity)]) + + def generate_activity_list(self, activity, index): + activity_list = [] + for key, value in activity.items(): + activity_list.append(key+">"+self.value_map[value[index]]) + return activity_list + + def get_gtf(self, release, activity): + + return self.reformat_to_gff(activity, release) + + + diff --git a/Modules/Ensembl/__init__.py b/Modules/Ensembl/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/Modules/Ensembl/checksums.py b/Modules/Ensembl/checksums.py new file mode 100644 index 0000000..55209f9 --- /dev/null +++ b/Modules/Ensembl/checksums.py @@ -0,0 +1,27 @@ +import hashlib + +# Python implementation of linux sum (BSD 16-bit Checksum) commandline tool. + +def bsdchecksum(infile): + with open(infile, 'rb') as f: + file_bytes = f.read() + c_sum = 0 + for char in file_bytes: + c_sum = (c_sum >> 1) + ((c_sum & 1) << 15) + c_sum += char + c_sum &= 0xffff + return c_sum + + +def md5_checksum(infile): + with open(infile, 'rb') as f: + file_bytes = f.read() + return hashlib.md5(file_bytes).hexdigest() + + +if __name__ == '__main__': + # print(bsdchecksum("/home/basti/Schreibtisch/tests/homo_sapiens.GRCh38.HMEC.Regulatory_Build.regulatory_activity.20161111.gff.gz")) + print(md5_checksum("/home/basti/Schreibtisch/tests/" + "mus_musculus.GRCm38.forebrain_embryonic_16_5_days." + "Regulatory_Build.regulatory_activity.20180516.gff.gz")) + diff --git a/Modules/SaveResults.py b/Modules/SaveResults.py new file mode 100644 index 0000000..2dddda7 --- /dev/null +++ b/Modules/SaveResults.py @@ -0,0 +1,19 @@ +import csv +import os + + +class ResultSaver: + + def __init__(self, results, organism, tissue): + + print("Save results to File !") + self.path = "" + if tissue: + self.path = os.path.join("./results/"+organism+"_filtered.gtf") + else: + self.path = os.path.join("./results/"+organism+".gtf") + + with open(self.path, "w") as file: + write_it = csv.writer(file, delimiter='\t') + for line in results: + write_it.writerow(line) diff --git a/Modules/Uniquifier.py b/Modules/Uniquifier.py new file mode 100644 index 0000000..7d4925d --- /dev/null +++ b/Modules/Uniquifier.py @@ -0,0 +1,34 @@ +class UniqueFilter: + + def __init__(self, ense, ucsc, org_filter=None): + self.results = self.get_filtered_results(org_filter, ense, ucsc) + + def get_results(self): + return self.results + + def get_filtered_results(self, org_filter, ense, ucsc): + unfiltered_results = self.concat_without_duplicates(ense, ucsc) + if org_filter: + filterstrings = [x+">ACTIVE" for x in org_filter] + return_list = [] + for element in unfiltered_results: + if any(tissue in element[-1] for tissue in filterstrings): + return_list.append(element) + return return_list + else: + return unfiltered_results + + + @staticmethod + def concat_without_duplicates(ense, ucsc): + results = ense+ucsc + for ens in ense: + for uc in ucsc: + if ens[0] == uc[0]: + #print("Chromosome Equal") + if ense[3] == uc[3]: + results.remove(ucsc) + + return results + + diff --git a/Modules/__init__.py b/Modules/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/Modules/ucsc/__init__.py b/Modules/ucsc/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/Modules/ucsc/bigBedToBed b/Modules/ucsc/bigBedToBed new file mode 100755 index 0000000000000000000000000000000000000000..86cd0627555ccc36d42447402b7d3539ab9d3743 GIT binary patch literal 5893760 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%0A28GQBj5m;*S<;j&YexU(FiYeC}9v30c*@Km4$ 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
    3Hf9b>2pJjgE_B5RuDO&6b0o2&C2>Xh=^CaOE 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

    QFm*7x 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�Mu;A;QSnz@PV^~|J+vSv?}KVM}yQf0^`LzT|3 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≺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 z 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 z

    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 H{G+kX(9Br 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℞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
    6UI6NY3lq^hP$5g01T|0l34lQfVw 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

    B5#(`6pCcc~Ng0H`zX;g<&?*Qu-* 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 z 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

    A;M3c&t-906*H>Vr& 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�FAXMn7?;Fu(@NhBj2rW}v6bvHc%SK( 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%0AVjar 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≀L&QU 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

    nJ^@4DVAMk?A`|u_^gP#eRAI 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

    x`(wEA1D9uKUTv2XaD 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

    1. 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

      P`px!{(uDX49NsgN{eEton)@UYkv)Dgkd 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%0Ad|XJ0-ktG{&^UF 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 UOT0X7{Nlfa06Ccqn0)O17aizdQ2+n{ literal 0 HcmV?d00001 diff --git a/Modules/ucsc/ucsc.py b/Modules/ucsc/ucsc.py new file mode 100644 index 0000000..4fbad78 --- /dev/null +++ b/Modules/ucsc/ucsc.py @@ -0,0 +1,90 @@ +import subprocess +import csv +import os +import json +import re + + +class UcscGtf: + + def __init__(self, org): + self.organism_id = self.get_organism_id(org) + self.link = "http://hgdownload.soe.ucsc.edu/gbdb/"+self.organism_id+"/ncbiRefSeq/refSeqFuncElems.bb" + self.output = "./UCSCData/"+self.organism_id+".bed" + print("Getting UCSC Data") + self.generate_gff_file() + self.ucsc_categories = self.get_activity_categories(org) + self.gtf_lines = self.read_gff_to_gtf() + print("UCSC finished !") + + def generate_gff_file(self): + callstring = ["./Modules/ucsc/bigBedToBed", self.link, self.output] + subprocess.call(callstring) + + def read_gff_to_gtf(self): + gtf_lines = [] + with open(self.output, 'r') as csvfile: + tsvreader = csv.reader(csvfile, delimiter='\t') + for row in tsvreader: + sequence = [] + sequence.append(row[0]) + sequence.append("UCSC") + sequence.append(row[3]) + sequence.append(row[1]) + sequence.append(row[2]) + sequence.append(".") + sequence.append(row[5]) + sequence.append(".") + sequence.append("; ".join([self.find_ID("".join(row[11:])), ", ".join(self.get_activity(".".join(row[11:])))])) + gtf_lines.append(sequence) + + return gtf_lines + + def find_ID(self, line): + pattern = re.compile(r'ID:[0-9]{,9}|$') + + return re.search( pattern, line).group() + + def get_activity(self, line): + key_status = [] + for key, value in self.ucsc_categories.items(): + if value: + if any([line.find(keyword) != -1 for keyword in value]): + key_status.append(key+">ACTIVE") + else: + key_status.append(key + ">NA") + else: + key_status.append(key + ">NA") + return key_status + + @staticmethod + def get_organism_id(org): + if org == "homo_sapiens": + return "hg38" + elif org == "mus_musculus": + return "mm10" + + @staticmethod + def get_activity_categories(organism): + path_to_config = os.path.join("./config/celltypes_" + organism + ".json") + categories = {} + with open(path_to_config) as input_file: + data = json.loads(input_file.read()) + for x in data: + categories[x["type"]] = x["alias_ucsc"] + + return categories + + def get_gtf(self): + return self.gtf_lines + + def test_save_to_file(self): + + with open("./results/test.gtf", "w") as file: + write_it = csv.writer(file, delimiter='\t') + for line in self.gtf_lines: + write_it.writerow(line) + + +#u = UcscGtf("homo_sapiens") +#u.test_save_to_file() \ No newline at end of file diff --git a/RegGTFExtractor.py b/RegGTFExtractor.py new file mode 100755 index 0000000..0b2b662 --- /dev/null +++ b/RegGTFExtractor.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python3 + +import argparse +from Modules.Ensembl.Ensembl import Ensembl +from Modules.ucsc.ucsc import UcscGtf +from Modules.Uniquifier import UniqueFilter +from Modules.SaveResults import ResultSaver + + +def main_script(org, tissuetype=None): + + ucsc = UcscGtf(org) + ense = Ensembl(org) + print("Getting Unique Results") + unique_filter = UniqueFilter(ense.get_gtf(), ucsc.get_gtf(), tissuetype) + ResultSaver(unique_filter.get_results(), org, tissuetype) + + +if __name__ == '__main__': + parser = argparse.ArgumentParser(description='GTF-Generator from UCSC Table Browser and Ensembl Regulatory Build' ) + parser.add_argument('organism', help='Source organism [ homo_sapiens or mus_musculus ]', action='store', nargs='?', type=str) + parser.add_argument('--tissue', help='Tissue- or Celltype(s)', action='store', nargs='*', type=str) + args = vars(parser.parse_args()) + if args["organism"]: + #print(args["tissue"]) + main_script(args["organism"], args["tissue"]) + else: + print("No Arguments found -> See ./RegGTFExtractor.py -h for help.") + diff --git a/config/celltypes_homo_sapiens.json b/config/celltypes_homo_sapiens.json new file mode 100644 index 0000000..0f02cde --- /dev/null +++ b/config/celltypes_homo_sapiens.json @@ -0,0 +1,179 @@ +[ + { + "type": "A549", + "alias_ucsc": [], + "alias_ensembl": ["A549"] + }, + { + "type": "Aorta", + "alias_ucsc": ["branchial arch"], + "alias_ensembl": ["Aorta"] + }, + { + "type": "Thymus", + "alias_ucsc": [], + "alias_ensembl": ["Fetal_Thymus", "Thymus"] + }, + { + "type": "B-Cells", + "alias_ucsc": [], + "alias_ensembl": ["B_cells_PB_Roadmap", "naive_B_cell_VB", "GM12878"] + }, + { + "type": "T-Cell", + "alias_ucsc": [], + "alias_ensembl": ["CD4_ab_T_cell_VB", "CM_CD4_ab_T_cell_VB", "CD8_ab_T_cell_CB", "T_cells_PB_Roadmap"] + }, + { + "type": "Monocyte", + "alias_ucsc": [], + "alias_ensembl": ["CD14CD16__monocyte_CB", "CD14CD16__monocyte_VB", "Monocytes_CD14", "Monocytes_CD14_PB_Roadmap"] + }, + { + "type": "Neutrophil", + "alias_ucsc": [], + "alias_ensembl": ["neutrophil_CB", "neutrophil_myelocyte_BM", "neutrophil_VB"] + }, + { + "type": "Eosinophil", + "alias_ucsc": [], + "alias_ensembl": ["eosinophil_VB"] + }, + { + "type": "Macrophage", + "alias_ucsc": [], + "alias_ensembl": [ + "M0_macrophage_CB", + "M0_macrophage_VB", + "M1_macrophage_CB", + "M1_macrophage_VB", + "M2_macrophage_CB", + "M2_macrophage_VB" + ] + }, + { + "type": "Erythroblast", + "alias_ucsc": [], + "alias_ensembl": ["erythroblast_CB"] + }, + { + "type": "Intestine", + "alias_ucsc": [], + "alias_ensembl": ["Fetal_Intestine_Large", "Fetal_Intestine_Small", "Small_Intestine"] + }, + { + "type": "AdrenalGland", + "alias_ucsc": [], + "alias_ensembl": ["Fetal_Adrenal_Gland"] + }, + { + "type": "Muscle", + "alias_ucsc": ["limb"], + "alias_ensembl": ["Fetal_Muscle_Leg", "Fetal_Muscle_Trunk", "Psoas_Muscle", "HSMM", "HSMMtube"] + }, + { + "type": "Gastric", + "alias_ucsc": [], + "alias_ensembl": ["Fetal_Stomach", "Gastric"] + }, + { + "type": "Endothelial", + "alias_ucsc": ["blood vessels"], + "alias_ensembl": ["EPC_VB", "HMEC", "HUVEC", "HUVEC_prol_CB", "NHEK"] + }, + { + "type": "StemCells", + "alias_ucsc": [], + "alias_ensembl": ["H1ESC", "H1_mesenchymal", "H1_neuronal_progenitor", "H1_trophoblast", "H9", "MSC_VB", "iPS_20b", "iPS_DF_6_9", "iPS_DF_19_11"] + }, + { + "type": "Lung", + "alias_ucsc": [], + "alias_ensembl": ["Lung", "IMR90", "NHLF"] + }, + { + "type": "Pancreas", + "alias_ucsc": ["pancreas"], + "alias_ensembl": ["Pancreas"] + }, + { + "type": "Liver", + "alias_ucsc": ["liver"], + "alias_ensembl": [] + }, + { + "type": "Ovary", + "alias_ucsc": [], + "alias_ensembl": ["Ovary"] + }, + { + "type": "Placenta", + "alias_ucsc": [], + "alias_ensembl": ["Placenta"] + }, + { + "type": "Spleen", + "alias_ucsc": [], + "alias_ensembl": ["Spleen"] + }, + { + "type": "Heart", + "alias_ucsc": ["heart"], + "alias_ensembl": ["Right_Atrium", "Left_Ventricle"] + }, + { + "type": "Osteoblast", + "alias_ucsc": [], + "alias_ensembl": ["Osteobl"] + }, + { + "type": "Fibroblast", + "alias_ucsc": [], + "alias_ensembl": ["NHDF_AD"] + }, + { + "type": "NK-Cells", + "alias_ucsc": [], + "alias_ensembl": ["Natural_Killer_cells_PB"] + }, + { + "type": "Cancers", + "alias_ucsc": [], + "alias_ensembl": ["HeLa_S3", "HepG2", "DND_41", "K562"] + }, + { + "type": "Brain", + "alias_ucsc": ["midbrain (mesencephalon)", "trigeminal V (ganglion, cranial)", "forebrain", "neural tube", "hindbrain (rhombencephalon)", "dorsal root ganglion", "cranial nerve"], + "alias_ensembl": ["NH_A"] + }, + { + "type": "Mesenchym", + "alias_ucsc": ["mesenchyme derived from neural crest", "facial mesenchyme"], + "alias_ensembl": [] + }, + { + "type": "Embryonal", + "alias_ucsc": ["somite", "genital tubercle"], + "alias_ensembl": [] + }, + { + "type": "Eye", + "alias_ucsc": ["eye"], + "alias_ensembl": [] + }, + { + "type": "Nose", + "alias_ucsc": ["nose"], + "alias_ensembl": [] + }, + { + "type": "Tail", + "alias_ucsc": ["tail"], + "alias_ensembl": [] + }, + { + "type": "Melanocytes", + "alias_ucsc": ["melanocytes"], + "alias_ensembl": [] + } +] diff --git a/config/celltypes_mus_musculus.json b/config/celltypes_mus_musculus.json new file mode 100644 index 0000000..0f02cde --- /dev/null +++ b/config/celltypes_mus_musculus.json @@ -0,0 +1,179 @@ +[ + { + "type": "A549", + "alias_ucsc": [], + "alias_ensembl": ["A549"] + }, + { + "type": "Aorta", + "alias_ucsc": ["branchial arch"], + "alias_ensembl": ["Aorta"] + }, + { + "type": "Thymus", + "alias_ucsc": [], + "alias_ensembl": ["Fetal_Thymus", "Thymus"] + }, + { + "type": "B-Cells", + "alias_ucsc": [], + "alias_ensembl": ["B_cells_PB_Roadmap", "naive_B_cell_VB", "GM12878"] + }, + { + "type": "T-Cell", + "alias_ucsc": [], + "alias_ensembl": ["CD4_ab_T_cell_VB", "CM_CD4_ab_T_cell_VB", "CD8_ab_T_cell_CB", "T_cells_PB_Roadmap"] + }, + { + "type": "Monocyte", + "alias_ucsc": [], + "alias_ensembl": ["CD14CD16__monocyte_CB", "CD14CD16__monocyte_VB", "Monocytes_CD14", "Monocytes_CD14_PB_Roadmap"] + }, + { + "type": "Neutrophil", + "alias_ucsc": [], + "alias_ensembl": ["neutrophil_CB", "neutrophil_myelocyte_BM", "neutrophil_VB"] + }, + { + "type": "Eosinophil", + "alias_ucsc": [], + "alias_ensembl": ["eosinophil_VB"] + }, + { + "type": "Macrophage", + "alias_ucsc": [], + "alias_ensembl": [ + "M0_macrophage_CB", + "M0_macrophage_VB", + "M1_macrophage_CB", + "M1_macrophage_VB", + "M2_macrophage_CB", + "M2_macrophage_VB" + ] + }, + { + "type": "Erythroblast", + "alias_ucsc": [], + "alias_ensembl": ["erythroblast_CB"] + }, + { + "type": "Intestine", + "alias_ucsc": [], + "alias_ensembl": ["Fetal_Intestine_Large", "Fetal_Intestine_Small", "Small_Intestine"] + }, + { + "type": "AdrenalGland", + "alias_ucsc": [], + "alias_ensembl": ["Fetal_Adrenal_Gland"] + }, + { + "type": "Muscle", + "alias_ucsc": ["limb"], + "alias_ensembl": ["Fetal_Muscle_Leg", "Fetal_Muscle_Trunk", "Psoas_Muscle", "HSMM", "HSMMtube"] + }, + { + "type": "Gastric", + "alias_ucsc": [], + "alias_ensembl": ["Fetal_Stomach", "Gastric"] + }, + { + "type": "Endothelial", + "alias_ucsc": ["blood vessels"], + "alias_ensembl": ["EPC_VB", "HMEC", "HUVEC", "HUVEC_prol_CB", "NHEK"] + }, + { + "type": "StemCells", + "alias_ucsc": [], + "alias_ensembl": ["H1ESC", "H1_mesenchymal", "H1_neuronal_progenitor", "H1_trophoblast", "H9", "MSC_VB", "iPS_20b", "iPS_DF_6_9", "iPS_DF_19_11"] + }, + { + "type": "Lung", + "alias_ucsc": [], + "alias_ensembl": ["Lung", "IMR90", "NHLF"] + }, + { + "type": "Pancreas", + "alias_ucsc": ["pancreas"], + "alias_ensembl": ["Pancreas"] + }, + { + "type": "Liver", + "alias_ucsc": ["liver"], + "alias_ensembl": [] + }, + { + "type": "Ovary", + "alias_ucsc": [], + "alias_ensembl": ["Ovary"] + }, + { + "type": "Placenta", + "alias_ucsc": [], + "alias_ensembl": ["Placenta"] + }, + { + "type": "Spleen", + "alias_ucsc": [], + "alias_ensembl": ["Spleen"] + }, + { + "type": "Heart", + "alias_ucsc": ["heart"], + "alias_ensembl": ["Right_Atrium", "Left_Ventricle"] + }, + { + "type": "Osteoblast", + "alias_ucsc": [], + "alias_ensembl": ["Osteobl"] + }, + { + "type": "Fibroblast", + "alias_ucsc": [], + "alias_ensembl": ["NHDF_AD"] + }, + { + "type": "NK-Cells", + "alias_ucsc": [], + "alias_ensembl": ["Natural_Killer_cells_PB"] + }, + { + "type": "Cancers", + "alias_ucsc": [], + "alias_ensembl": ["HeLa_S3", "HepG2", "DND_41", "K562"] + }, + { + "type": "Brain", + "alias_ucsc": ["midbrain (mesencephalon)", "trigeminal V (ganglion, cranial)", "forebrain", "neural tube", "hindbrain (rhombencephalon)", "dorsal root ganglion", "cranial nerve"], + "alias_ensembl": ["NH_A"] + }, + { + "type": "Mesenchym", + "alias_ucsc": ["mesenchyme derived from neural crest", "facial mesenchyme"], + "alias_ensembl": [] + }, + { + "type": "Embryonal", + "alias_ucsc": ["somite", "genital tubercle"], + "alias_ensembl": [] + }, + { + "type": "Eye", + "alias_ucsc": ["eye"], + "alias_ensembl": [] + }, + { + "type": "Nose", + "alias_ucsc": ["nose"], + "alias_ensembl": [] + }, + { + "type": "Tail", + "alias_ucsc": ["tail"], + "alias_ensembl": [] + }, + { + "type": "Melanocytes", + "alias_ucsc": ["melanocytes"], + "alias_ensembl": [] + } +] From fe1a5164960971add755a93542d76e539856e05b Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 11:20:14 +0100 Subject: [PATCH 076/206] Update .ignore --- .gitignore | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index dd76273..9f1b02e 100644 --- a/.gitignore +++ b/.gitignore @@ -164,8 +164,7 @@ crashlytics-build.properties fabric.properties # Editor-based Rest Client -.idea/httpRequests - +/.idea/ /EnsemblData/release-94/ /UCSCData/hg38.bed /UCSCData/mm10.bed From 4683fdf151fc5fec0820688f197c201d7c7aa945 Mon Sep 17 00:00:00 2001 From: SebastianBeyvers Date: Tue, 4 Dec 2018 11:25:48 +0100 Subject: [PATCH 077/206] Create README.md --- README.md | 1 + 1 file changed, 1 insertion(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..0c7605c --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +# masterJLU2018 From 966761fd9af7d0568796874e67ffc6c86ced5860 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Tue, 4 Dec 2018 11:35:46 +0100 Subject: [PATCH 078/206] fixed cdhit wrapper description --- bin/cdhit_wrapper.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/cdhit_wrapper.R b/bin/cdhit_wrapper.R index fd2ce49..070cb62 100644 --- a/bin/cdhit_wrapper.R +++ b/bin/cdhit_wrapper.R @@ -11,7 +11,7 @@ option_list <- list( ) opt_parser <- OptionParser(option_list = option_list, - description = "Reduce sequences to frequent regions.") + description = "CD-HIT-EST Wrapper function.") opt <- parse_args(opt_parser) From b82dc6a366ee47a857ab786f2ac5440ed9006fe6 Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 11:41:34 +0100 Subject: [PATCH 079/206] Readme aktualisier --- README.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/README.md b/README.md index 0c7605c..211ae91 100644 --- a/README.md +++ b/README.md @@ -1 +1,17 @@ # masterJLU2018 + +Tool for automaticly retrieving Regulatory Features based on [Ensembl Regulatory Build](http://www.ensembl.org/info/genome/funcgen/regulatory_build.html) +and [UCSC-Table-Browser](https://genome.ucsc.edu/cgi-bin/hgTables). Generating a GTF-File with Activity Data for a customisable number of tissue- and celltype categories. + +## Usage + +python3 ./RegGTFExtractor.py organism [--tissue] + +- organism = Source organism (currently supported homo_sapiens and mus_musculus) +- --tissue[] = optional Parameter: List of Tissues based on ./config/celltypes_organism.json Filters the output by activity + + +## Dependencies + +- Linux 64-bit +- Python3 or newer \ No newline at end of file From d8655fdbdefc3215298f73e063f7a3625da7a602 Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 11:54:21 +0100 Subject: [PATCH 080/206] Check for local Folders --- RegGTFExtractor.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/RegGTFExtractor.py b/RegGTFExtractor.py index 0b2b662..294e539 100755 --- a/RegGTFExtractor.py +++ b/RegGTFExtractor.py @@ -5,10 +5,22 @@ from Modules.ucsc.ucsc import UcscGtf from Modules.Uniquifier import UniqueFilter from Modules.SaveResults import ResultSaver +import os + + +def check_for_local_folder(): + + if not os.path.isdir("./EnsemblData"): + + os.mkdir("./EnsemblData") + + if not os.path.isdir( "./UCSCData" ): + os.mkdir( "./UCSCData" ) def main_script(org, tissuetype=None): + check_for_local_folder() ucsc = UcscGtf(org) ense = Ensembl(org) print("Getting Unique Results") From 86f28cfd269026cabca7382217b375ad4ab1bc99 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 4 Dec 2018 12:05:42 +0100 Subject: [PATCH 081/206] update the name of log-file --- bin/call_peaks.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/call_peaks.py b/bin/call_peaks.py index 24ef880..f5214f1 100644 --- a/bin/call_peaks.py +++ b/bin/call_peaks.py @@ -317,8 +317,8 @@ def main(): #check if there is an existing directory that user gave as input, otherwise create this directory from the path provided from the user #check_directory(args.output_directory) - #fh = logging.FileHandler(os.path.join(args.output_directory, "call_peaks_log.txt")) - fh = logging.FileHandler("call_peaks_log.txt") + #fh = logging.FileHandler(os.path.join(args.output_directory, "call_peaks_log.log")) + fh = logging.FileHandler("call_peaks_log.log") fh.setLevel(logging.INFO) fh.setFormatter(formatter) logger.addHandler(fh) From 835faecf39b9bcff73db4ad6109449d23984cfc8 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Tue, 4 Dec 2018 12:06:17 +0100 Subject: [PATCH 082/206] update the name of the log-file --- bin/call_peaks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/call_peaks.py b/bin/call_peaks.py index f5214f1..bf43de2 100644 --- a/bin/call_peaks.py +++ b/bin/call_peaks.py @@ -38,7 +38,7 @@ def parse_args(): parser.add_argument('--window_length', default=200, type=int, help='enter the length for a window, by defauld 200 bp') parser.add_argument('--step', default=100, type=int, help='enter a step to move the window, by default 100 bp') parser.add_argument('--percentage', default=0, type=int, help='enter a percentage to be added to background while searching for footprints, by default 0%') - parser.add_argument('--silent', action='store_true', help='while working with data write the information only into ./call_peaks_log.txt') + parser.add_argument('--silent', action='store_true', help='while working with data write the information only into ./call_peaks_log.log') args = parser.parse_args() return args From dc7ad08842822c2ee125f644aefc20222b55221f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Tue, 4 Dec 2018 06:47:56 -0500 Subject: [PATCH 083/206] renaming channels --- pipeline.nf | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pipeline.nf b/pipeline.nf index 25b6be5..fce7066 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -42,6 +42,8 @@ process extract_known_TFBS { } + + bed_for_overlap_with_TFBS.combine(known_TFBS_for_overlap).combine(fa_overlap_2).set {for_overlap} @@ -67,7 +69,7 @@ process clustering { conda "${path_env}" input: - file (bed) from FASTA_for_clustering + file (bed) from bed_for_clustering output: set name, file ('*.bed') into bed_for_motif_esitmation From 96efc463da90b5f26c8ea9a27f7b4182617c076a Mon Sep 17 00:00:00 2001 From: Schultheis Date: Tue, 4 Dec 2018 12:54:27 +0100 Subject: [PATCH 084/206] remove sequences below threshold (not above) --- bin/reduce_bed.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index cfa9766..d73fb94 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -54,7 +54,7 @@ reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", thr # remove sequences below minimum length total_rows <- nrow(bed_table) - bed_table <- bed_table[nchar(sequence) < min_seq_length] + bed_table <- bed_table[nchar(sequence) > min_seq_length] if (total_rows > nrow(bed_table)) { message("Removed ", total_rows - nrow(bed_table), " sequence(s) below minimum length of ", min_seq_length) } From 8d06cdc2fb08100dba27649c2c39f422382d7155 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Tue, 4 Dec 2018 07:13:00 -0500 Subject: [PATCH 085/206] added parameter to config --- config/create_gtf.config | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/config/create_gtf.config b/config/create_gtf.config index e69de29..d1bbb12 100644 --- a/config/create_gtf.config +++ b/config/create_gtf.config @@ -0,0 +1,4 @@ +params{ + organism="homo_sapiens" + tissue="" +} From ee6e0d7239904d17794695ddc0ed1e5353aa80b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Tue, 4 Dec 2018 07:13:32 -0500 Subject: [PATCH 086/206] finished create_GTF --- pipeline.nf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index fce7066..a8e15dc 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -42,8 +42,6 @@ process extract_known_TFBS { } - - bed_for_overlap_with_TFBS.combine(known_TFBS_for_overlap).combine(fa_overlap_2).set {for_overlap} @@ -64,7 +62,6 @@ process overlap_with_known_TFBS { } - process clustering { conda "${path_env}" @@ -226,11 +223,14 @@ process cluster_quality { process create_GTF { conda "${path_env}" + publishDir 'Path', mode:'copy' + output: file ('*.gtf') into gtf_for_uropa script: """ + python ${path_bin}/RegGTFExtractor.py ${params.organism} --tissue ${params.tissues} """ } From 9bd64bebcc3b6327346f8f06a1f27e9142d44444 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Tue, 4 Dec 2018 13:18:44 +0100 Subject: [PATCH 087/206] show progressbar even in non interactive context --- bin/reduce_bed.R | 2 ++ 1 file changed, 2 insertions(+) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index d73fb94..4590e44 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -231,6 +231,8 @@ find_kmer_regions <- function(bed, kmer_counts, minoverlap = 1 , threads = NULL) # call function with given parameter if not in interactive context (e.g. run from shell) if (!interactive()) { + # show apply progressbar + pbo <- pbapply::pboptions(type = "timer") # remove last parameter (help param) params <- opt[-length(opt)] do.call(reduce_bed, args = params) From 9d23fd9082720fe15780df589f31157b0f3f4d01 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Tue, 4 Dec 2018 07:23:08 -0500 Subject: [PATCH 088/206] moved Modules to bin --- .../Modules}/Ensembl/ActivityCategorizer.py | 0 {Modules => bin/Modules}/Ensembl/ActivityTable.py | 0 .../Modules}/Ensembl/ActivityTableGenerator.py | 0 {Modules => bin/Modules}/Ensembl/Ensembl.py | 0 .../Modules}/Ensembl/FTPHandling/FTPEntry.py | 0 .../Modules}/Ensembl/FTPHandling/URLRetrieve.py | 0 .../Modules}/Ensembl/FTPHandling/VersionChecker.py | 0 .../Modules}/Ensembl/FTPHandling/__init__.py | 0 {Modules => bin/Modules}/Ensembl/GTFGen.py | 0 {Modules => bin/Modules}/Ensembl/__init__.py | 0 {Modules => bin/Modules}/Ensembl/checksums.py | 0 {Modules => bin/Modules}/SaveResults.py | 0 {Modules => bin/Modules}/Uniquifier.py | 0 {Modules => bin/Modules}/__init__.py | 0 {Modules => bin/Modules}/ucsc/__init__.py | 0 {Modules => bin/Modules}/ucsc/bigBedToBed | Bin {Modules => bin/Modules}/ucsc/ucsc.py | 0 RegGTFExtractor.py => bin/RegGTFExtractor.py | 0 18 files changed, 0 insertions(+), 0 deletions(-) rename {Modules => bin/Modules}/Ensembl/ActivityCategorizer.py (100%) rename {Modules => bin/Modules}/Ensembl/ActivityTable.py (100%) rename {Modules => bin/Modules}/Ensembl/ActivityTableGenerator.py (100%) rename {Modules => bin/Modules}/Ensembl/Ensembl.py (100%) rename {Modules => bin/Modules}/Ensembl/FTPHandling/FTPEntry.py (100%) rename {Modules => bin/Modules}/Ensembl/FTPHandling/URLRetrieve.py (100%) rename {Modules => bin/Modules}/Ensembl/FTPHandling/VersionChecker.py (100%) rename {Modules => bin/Modules}/Ensembl/FTPHandling/__init__.py (100%) rename {Modules => bin/Modules}/Ensembl/GTFGen.py (100%) rename {Modules => bin/Modules}/Ensembl/__init__.py (100%) rename {Modules => bin/Modules}/Ensembl/checksums.py (100%) rename {Modules => bin/Modules}/SaveResults.py (100%) rename {Modules => bin/Modules}/Uniquifier.py (100%) rename {Modules => bin/Modules}/__init__.py (100%) rename {Modules => bin/Modules}/ucsc/__init__.py (100%) rename {Modules => bin/Modules}/ucsc/bigBedToBed (100%) mode change 100755 => 100644 rename {Modules => bin/Modules}/ucsc/ucsc.py (100%) rename RegGTFExtractor.py => bin/RegGTFExtractor.py (100%) mode change 100755 => 100644 diff --git a/Modules/Ensembl/ActivityCategorizer.py b/bin/Modules/Ensembl/ActivityCategorizer.py similarity index 100% rename from Modules/Ensembl/ActivityCategorizer.py rename to bin/Modules/Ensembl/ActivityCategorizer.py diff --git a/Modules/Ensembl/ActivityTable.py b/bin/Modules/Ensembl/ActivityTable.py similarity index 100% rename from Modules/Ensembl/ActivityTable.py rename to bin/Modules/Ensembl/ActivityTable.py diff --git a/Modules/Ensembl/ActivityTableGenerator.py b/bin/Modules/Ensembl/ActivityTableGenerator.py similarity index 100% rename from Modules/Ensembl/ActivityTableGenerator.py rename to bin/Modules/Ensembl/ActivityTableGenerator.py diff --git a/Modules/Ensembl/Ensembl.py b/bin/Modules/Ensembl/Ensembl.py similarity index 100% rename from Modules/Ensembl/Ensembl.py rename to bin/Modules/Ensembl/Ensembl.py diff --git a/Modules/Ensembl/FTPHandling/FTPEntry.py b/bin/Modules/Ensembl/FTPHandling/FTPEntry.py similarity index 100% rename from Modules/Ensembl/FTPHandling/FTPEntry.py rename to bin/Modules/Ensembl/FTPHandling/FTPEntry.py diff --git a/Modules/Ensembl/FTPHandling/URLRetrieve.py b/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py similarity index 100% rename from Modules/Ensembl/FTPHandling/URLRetrieve.py rename to bin/Modules/Ensembl/FTPHandling/URLRetrieve.py diff --git a/Modules/Ensembl/FTPHandling/VersionChecker.py b/bin/Modules/Ensembl/FTPHandling/VersionChecker.py similarity index 100% rename from Modules/Ensembl/FTPHandling/VersionChecker.py rename to bin/Modules/Ensembl/FTPHandling/VersionChecker.py diff --git a/Modules/Ensembl/FTPHandling/__init__.py b/bin/Modules/Ensembl/FTPHandling/__init__.py similarity index 100% rename from Modules/Ensembl/FTPHandling/__init__.py rename to bin/Modules/Ensembl/FTPHandling/__init__.py diff --git a/Modules/Ensembl/GTFGen.py b/bin/Modules/Ensembl/GTFGen.py similarity index 100% rename from Modules/Ensembl/GTFGen.py rename to bin/Modules/Ensembl/GTFGen.py diff --git a/Modules/Ensembl/__init__.py b/bin/Modules/Ensembl/__init__.py similarity index 100% rename from Modules/Ensembl/__init__.py rename to bin/Modules/Ensembl/__init__.py diff --git a/Modules/Ensembl/checksums.py b/bin/Modules/Ensembl/checksums.py similarity index 100% rename from Modules/Ensembl/checksums.py rename to bin/Modules/Ensembl/checksums.py diff --git a/Modules/SaveResults.py b/bin/Modules/SaveResults.py similarity index 100% rename from Modules/SaveResults.py rename to bin/Modules/SaveResults.py diff --git a/Modules/Uniquifier.py b/bin/Modules/Uniquifier.py similarity index 100% rename from Modules/Uniquifier.py rename to bin/Modules/Uniquifier.py diff --git a/Modules/__init__.py b/bin/Modules/__init__.py similarity index 100% rename from Modules/__init__.py rename to bin/Modules/__init__.py diff --git a/Modules/ucsc/__init__.py b/bin/Modules/ucsc/__init__.py similarity index 100% rename from Modules/ucsc/__init__.py rename to bin/Modules/ucsc/__init__.py diff --git a/Modules/ucsc/bigBedToBed b/bin/Modules/ucsc/bigBedToBed old mode 100755 new mode 100644 similarity index 100% rename from Modules/ucsc/bigBedToBed rename to bin/Modules/ucsc/bigBedToBed diff --git a/Modules/ucsc/ucsc.py b/bin/Modules/ucsc/ucsc.py similarity index 100% rename from Modules/ucsc/ucsc.py rename to bin/Modules/ucsc/ucsc.py diff --git a/RegGTFExtractor.py b/bin/RegGTFExtractor.py old mode 100755 new mode 100644 similarity index 100% rename from RegGTFExtractor.py rename to bin/RegGTFExtractor.py From c29c46def83bca43a5d7d9a566f9588d56306e78 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Tue, 4 Dec 2018 13:29:25 +0100 Subject: [PATCH 089/206] Delete .gitignore --- .gitignore | 171 ----------------------------------------------------- 1 file changed, 171 deletions(-) delete mode 100644 .gitignore diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 9f1b02e..0000000 --- a/.gitignore +++ /dev/null @@ -1,171 +0,0 @@ -# Created by .ignore support plugin (hsz.mobi) -### Python template -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*$py.class - -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -*.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*.cover -.hypothesis/ -.pytest_cache/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -local_settings.py -db.sqlite3 - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# pyenv -.python-version - -# celery beat schedule file -celerybeat-schedule - -# SageMath parsed files -*.sage.py - -# Environments -.env -.venv -env/ -venv/ -ENV/ -env.bak/ -venv.bak/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ -### JetBrains template -# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm -# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 - -# User-specific stuff -.idea/**/workspace.xml -.idea/**/tasks.xml -.idea/**/usage.statistics.xml -.idea/**/dictionaries -.idea/**/shelf - -# Sensitive or high-churn files -.idea/**/dataSources/ -.idea/**/dataSources.ids -.idea/**/dataSources.local.xml -.idea/**/sqlDataSources.xml -.idea/**/dynamic.xml -.idea/**/uiDesigner.xml -.idea/**/dbnavigator.xml - -# Gradle -.idea/**/gradle.xml -.idea/**/libraries - -# Gradle and Maven with auto-import -# When using Gradle or Maven with auto-import, you should exclude module files, -# since they will be recreated, and may cause churn. Uncomment if using -# auto-import. -# .idea/modules.xml -# .idea/*.iml -# .idea/modules - -# CMake -cmake-build-*/ - -# Mongo Explorer plugin -.idea/**/mongoSettings.xml - -# File-based project format -*.iws - -# IntelliJ -out/ - -# mpeltonen/sbt-idea plugin -.idea_modules/ - -# JIRA plugin -atlassian-ide-plugin.xml - -# Cursive Clojure plugin -.idea/replstate.xml - -# Crashlytics plugin (for Android Studio and IntelliJ) -com_crashlytics_export_strings.xml -crashlytics.properties -crashlytics-build.properties -fabric.properties - -# Editor-based Rest Client -/.idea/ -/EnsemblData/release-94/ -/UCSCData/hg38.bed -/UCSCData/mm10.bed -/results/homo_sapiens_filtered.gtf From 0b1c5c75924efa2e652f2822fe1f877c62d20e0c Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 13:34:39 +0100 Subject: [PATCH 090/206] Changed config locations --- bin/Modules/Ensembl/ActivityCategorizer.py | 2 +- bin/Modules/ucsc/ucsc.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/Modules/Ensembl/ActivityCategorizer.py b/bin/Modules/Ensembl/ActivityCategorizer.py index 8fee867..fa204ae 100644 --- a/bin/Modules/Ensembl/ActivityCategorizer.py +++ b/bin/Modules/Ensembl/ActivityCategorizer.py @@ -32,7 +32,7 @@ def get_categorization(self): def read_config(self, organism): c_dict = {} - path_to_config = os.path.join("./config/celltypes_"+organism+".json") + path_to_config = os.path.join("../config/celltypes_"+organism+".json") with open(path_to_config) as input: data = json.loads(input.read()) for x in data: diff --git a/bin/Modules/ucsc/ucsc.py b/bin/Modules/ucsc/ucsc.py index 4fbad78..9d10108 100644 --- a/bin/Modules/ucsc/ucsc.py +++ b/bin/Modules/ucsc/ucsc.py @@ -66,7 +66,7 @@ def get_organism_id(org): @staticmethod def get_activity_categories(organism): - path_to_config = os.path.join("./config/celltypes_" + organism + ".json") + path_to_config = os.path.join("../config/celltypes_" + organism + ".json") categories = {} with open(path_to_config) as input_file: data = json.loads(input_file.read()) From 1c22f750a47b5e8498dd21fce96237024055bbaf Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 13:38:01 +0100 Subject: [PATCH 091/206] Added Dev to new local branch --- .gitignore | 168 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 168 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bac574a --- /dev/null +++ b/.gitignore @@ -0,0 +1,168 @@ +# Created by .ignore support plugin (hsz.mobi) +### Python template +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +### JetBrains template +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/modules.xml +# .idea/*.iml +# .idea/modules + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/ + From 0529318c1a57f32b3c31dc932a6a882fa031988f Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 13:44:23 +0100 Subject: [PATCH 092/206] changed resultpath --- bin/Modules/SaveResults.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/Modules/SaveResults.py b/bin/Modules/SaveResults.py index 2dddda7..e13aa6a 100644 --- a/bin/Modules/SaveResults.py +++ b/bin/Modules/SaveResults.py @@ -9,9 +9,9 @@ def __init__(self, results, organism, tissue): print("Save results to File !") self.path = "" if tissue: - self.path = os.path.join("./results/"+organism+"_filtered.gtf") + self.path = os.path.join("./"+organism+"_filtered.gtf") else: - self.path = os.path.join("./results/"+organism+".gtf") + self.path = os.path.join("./"+organism+".gtf") with open(self.path, "w") as file: write_it = csv.writer(file, delimiter='\t') From 8b2824e7a7977a33cf2a983bb9562adafe570fc4 Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 13:38:01 +0100 Subject: [PATCH 093/206] Added Dev to new local branch --- .gitignore | 168 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 168 insertions(+) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..bac574a --- /dev/null +++ b/.gitignore @@ -0,0 +1,168 @@ +# Created by .ignore support plugin (hsz.mobi) +### Python template +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +### JetBrains template +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm +# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 + +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries + +# Gradle and Maven with auto-import +# When using Gradle or Maven with auto-import, you should exclude module files, +# since they will be recreated, and may cause churn. Uncomment if using +# auto-import. +# .idea/modules.xml +# .idea/*.iml +# .idea/modules + +# CMake +cmake-build-*/ + +# Mongo Explorer plugin +.idea/**/mongoSettings.xml + +# File-based project format +*.iws + +# IntelliJ +out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Cursive Clojure plugin +.idea/replstate.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties +fabric.properties + +# Editor-based Rest Client +.idea/ + From 6cd598556ef0e0037ed2c1e0bc379703ada5dfdc Mon Sep 17 00:00:00 2001 From: Schultheis Date: Tue, 4 Dec 2018 13:46:10 +0100 Subject: [PATCH 094/206] added documentation --- bin/cdhit_wrapper.R | 6 +++--- bin/reduce_bed.R | 2 ++ 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/bin/cdhit_wrapper.R b/bin/cdhit_wrapper.R index 070cb62..ed5ea7f 100644 --- a/bin/cdhit_wrapper.R +++ b/bin/cdhit_wrapper.R @@ -18,8 +18,8 @@ opt <- parse_args(opt_parser) #' cd-hit wrapper #' #' @param input -#' @param similarity cdhit = -c -#' @param coverage In Nucleotides. cdhit = -A +#' @param similarity Similarity threshold. +#' @param coverage Minimal alignment length for both sequences in nucelotides. #' @param output Clustered bedfile. Adds cluster number in last column (lower number = bigger cluster). #' @param clean Clean up after run. #' @@ -42,7 +42,7 @@ cdhitest <- function(input, similarity = 0.8, coverage = 8, output = "cluster.be ### cd-hit-est cdhit_output <- "cdhit_output" - cdhit_call <- paste("cd-hit-est -i", fasta_file, "-o", cdhit_output, "-c", similarity, "-A", coverage, "-G 0 -n 3 -g 1 -r 0 -l 5 -sc 1") + cdhit_call <- paste("cd-hit-est -i", fasta_file, "-o", cdhit_output, "-c", similarity, "-A", coverage, "-G 0 -n 3 -g 1 -r 0 -l 5 -sc 1 -d 0") system(command = cdhit_call, wait = TRUE) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index 4590e44..223c946 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -131,6 +131,8 @@ reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", thr #' @param kmer Length of kmer #' @param motif Length of motif #' @param minoverlap Minimum number of bases overlapping between kmer and motif. Must be <= motif & <= kmer. Defaults to ceiling(motif / 2). +#' +#' @return Number of interesting kmer. significant_kmer <- function(bed, kmer, motif, minoverlap = ceiling(motif / 2)) { if (minoverlap > kmer || minoverlap > motif) { stop("Kmer & motif must be greater or equal than minoverlap!") From 279c1963636d6910e8292d6484ee698271e41010 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Tue, 4 Dec 2018 13:47:16 +0100 Subject: [PATCH 095/206] added cluster dependencies --- masterenv.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/masterenv.yml b/masterenv.yml index 175f53a..72d2b64 100644 --- a/masterenv.yml +++ b/masterenv.yml @@ -12,3 +12,15 @@ dependencies: - r-seqinr - numpy - pybigWig +# cluster + - cd-hit + - jellyfish + - r-base>=3.5.1 + - r-data.table + # - r-seqinr + - r-pbapply + - r-igraph + - r-stringi + - r-stringr + - r-optparse + - bioconductor-iranges From 0a04f3019634d13a47d5d3e186e1fb5065d621cf Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 14:42:18 +0100 Subject: [PATCH 096/206] Changed Paths --- .gitignore | 168 ------------------ bin/Modules/Ensembl/ActivityCategorizer.py | 14 +- bin/Modules/Ensembl/ActivityTable.py | 4 +- bin/Modules/Ensembl/Ensembl.py | 18 +- .../Ensembl/FTPHandling/URLRetrieve.py | 2 +- .../Ensembl/FTPHandling/VersionChecker.py | 26 +-- bin/Modules/Ensembl/GTFGen.py | 8 +- bin/Modules/ucsc/ucsc.py | 26 +-- bin/RegGTFExtractor.py | 9 +- 9 files changed, 49 insertions(+), 226 deletions(-) delete mode 100644 .gitignore diff --git a/.gitignore b/.gitignore deleted file mode 100644 index bac574a..0000000 --- a/.gitignore +++ /dev/null @@ -1,168 +0,0 @@ -# Created by .ignore support plugin (hsz.mobi) -### Python template -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*$py.class - -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -*.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*.cover -.hypothesis/ -.pytest_cache/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -local_settings.py -db.sqlite3 - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# pyenv -.python-version - -# celery beat schedule file -celerybeat-schedule - -# SageMath parsed files -*.sage.py - -# Environments -.env -.venv -env/ -venv/ -ENV/ -env.bak/ -venv.bak/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ -### JetBrains template -# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm -# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 - -# User-specific stuff -.idea/**/workspace.xml -.idea/**/tasks.xml -.idea/**/usage.statistics.xml -.idea/**/dictionaries -.idea/**/shelf - -# Sensitive or high-churn files -.idea/**/dataSources/ -.idea/**/dataSources.ids -.idea/**/dataSources.local.xml -.idea/**/sqlDataSources.xml -.idea/**/dynamic.xml -.idea/**/uiDesigner.xml -.idea/**/dbnavigator.xml - -# Gradle -.idea/**/gradle.xml -.idea/**/libraries - -# Gradle and Maven with auto-import -# When using Gradle or Maven with auto-import, you should exclude module files, -# since they will be recreated, and may cause churn. Uncomment if using -# auto-import. -# .idea/modules.xml -# .idea/*.iml -# .idea/modules - -# CMake -cmake-build-*/ - -# Mongo Explorer plugin -.idea/**/mongoSettings.xml - -# File-based project format -*.iws - -# IntelliJ -out/ - -# mpeltonen/sbt-idea plugin -.idea_modules/ - -# JIRA plugin -atlassian-ide-plugin.xml - -# Cursive Clojure plugin -.idea/replstate.xml - -# Crashlytics plugin (for Android Studio and IntelliJ) -com_crashlytics_export_strings.xml -crashlytics.properties -crashlytics-build.properties -fabric.properties - -# Editor-based Rest Client -.idea/ - diff --git a/bin/Modules/Ensembl/ActivityCategorizer.py b/bin/Modules/Ensembl/ActivityCategorizer.py index fa204ae..e29ac4b 100644 --- a/bin/Modules/Ensembl/ActivityCategorizer.py +++ b/bin/Modules/Ensembl/ActivityCategorizer.py @@ -4,7 +4,7 @@ class ActivityCategorizer: - def __init__(self, release, organism): + def __init__(self, release, organism, wd): # List of all Folders with Activity Tables @@ -12,13 +12,13 @@ def __init__(self, release, organism): # Dictionary from celltypes_organism.json mit key = Kategorie und Value = [Ordner] - self.c_dict = self.read_config(organism) + self.c_dict = self.read_config(organism, wd) # Activity table from all files as dict self.activity = {} - self.get_activity_data(release, organism) + self.get_activity_data(release, organism, wd) # Categorized Activity from Json-config print("Categorization: This may take a while") @@ -29,10 +29,10 @@ def __init__(self, release, organism): def get_categorization(self): return self.categorization - def read_config(self, organism): + def read_config(self, organism, wd): c_dict = {} - path_to_config = os.path.join("../config/celltypes_"+organism+".json") + path_to_config = os.path.join(wd, "../config/celltypes_"+organism+".json") with open(path_to_config) as input: data = json.loads(input.read()) for x in data: @@ -41,11 +41,11 @@ def read_config(self, organism): return c_dict - def get_activity_data(self, release, organism): + def get_activity_data(self, release, organism, wd): for folder in self.folderlist: # Generate path to binary File - file = os.path.join("./EnsemblData", release, organism, "activity", folder, "table.bin") + file = os.path.join(wd, "/EnsemblData", release, organism, "activity", folder, "table.bin") with open(file, "rb") as tables: self.activity[folder] = bytearray(tables.read()) diff --git a/bin/Modules/Ensembl/ActivityTable.py b/bin/Modules/Ensembl/ActivityTable.py index 042421a..105c351 100644 --- a/bin/Modules/Ensembl/ActivityTable.py +++ b/bin/Modules/Ensembl/ActivityTable.py @@ -15,8 +15,8 @@ class ActivityTable: 4, "activity=NA" """ - def __init__(self, organism, current_release): - self.link = os.path.join("./EnsemblData/", current_release, organism, "activity") + def __init__(self, organism, current_release, wd): + self.link = os.path.join(wd, "/EnsemblData/", current_release, organism, "activity") self.folders = next(os.walk(self.link))[1] self.generator = ATGenerator(["activity=ACTIVE", "activity=POISED", diff --git a/bin/Modules/Ensembl/Ensembl.py b/bin/Modules/Ensembl/Ensembl.py index df9cbc0..d80ce11 100644 --- a/bin/Modules/Ensembl/Ensembl.py +++ b/bin/Modules/Ensembl/Ensembl.py @@ -1,20 +1,20 @@ -from Modules.Ensembl.ActivityTable import ActivityTable -from Modules.Ensembl.FTPHandling.VersionChecker import EnsemblRegulationFTPRetriever as FTPRetriever -from Modules.Ensembl.ActivityCategorizer import ActivityCategorizer -from Modules.Ensembl.GTFGen import GTFGen +from bin.Modules.Ensembl.ActivityTable import ActivityTable +from bin.Modules.Ensembl.FTPHandling.VersionChecker import EnsemblRegulationFTPRetriever as FTPRetriever +from bin.Modules.Ensembl.ActivityCategorizer import ActivityCategorizer +from bin.Modules.Ensembl.GTFGen import GTFGen class Ensembl: - def __init__(self, organism): + def __init__(self, organism, wd): print("Starting Ensembl") - self.updater = FTPRetriever(organism) + self.updater = FTPRetriever(organism, wd) self.release = self.updater.get_release() - self.acttable = ActivityTable(organism, self.release) + self.acttable = ActivityTable(organism, self.release, wd) self.acttable.check_and_generate_activity_table() - self.categorizer = ActivityCategorizer(self.release, organism) + self.categorizer = ActivityCategorizer(self.release, organism, wd) print("Generating GTF") - self.gtf_generator = GTFGen(organism, self.release) + self.gtf_generator = GTFGen(organism, self.release, wd) print("Ensembl Finished !") diff --git a/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py b/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py index 598a6f5..0c164d7 100644 --- a/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py +++ b/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py @@ -1,5 +1,5 @@ import ftplib -from Modules.Ensembl.FTPHandling.FTPEntry import FTPEntry +from bin.Modules.Ensembl.FTPHandling.FTPEntry import FTPEntry class FTPHandler: diff --git a/bin/Modules/Ensembl/FTPHandling/VersionChecker.py b/bin/Modules/Ensembl/FTPHandling/VersionChecker.py index 874e776..6992dde 100644 --- a/bin/Modules/Ensembl/FTPHandling/VersionChecker.py +++ b/bin/Modules/Ensembl/FTPHandling/VersionChecker.py @@ -1,4 +1,4 @@ -from Modules.Ensembl.FTPHandling.URLRetrieve import FTPHandler +from bin.Modules.Ensembl.FTPHandling.URLRetrieve import FTPHandler import os.path @@ -9,12 +9,12 @@ class EnsemblRegulationFTPRetriever: And downloading newest version if necessary """ - def __init__(self, organism): + def __init__(self, organism, wd): self.site_ftp = FTPHandler("ftp.ensembl.org", "pub") self.remoteversion = self.get_current_ftp_version() - self.localversion = self.get_current_local_version() - if self.check_version_difference(organism): - self.download_currentversion_version(self.remoteversion, organism) + self.localversion = self.get_current_local_version(wd) + if self.check_version_difference(organism, wd): + self.download_currentversion_version(self.remoteversion, organism, wd) else: print("Newest Version installed, no update needed.") @@ -31,15 +31,15 @@ def get_current_ftp_version(self): print("Current release is "+c_release) return c_release - def check_organism(self, organism, release): - if organism in next(os.walk("./EnsemblData/"+release+"/"))[1]: + def check_organism(self, organism, release, wd): + if organism in next(os.walk(os.path.join(wd, "/EnsemblData/"+release+"/")))[1]: return False else: print("No Local Version for "+organism+" installed. Installing...") return True - def get_current_local_version(self): - directories = next(os.walk("./EnsemblData/"))[1] + def get_current_local_version(self, wd): + directories = next(os.walk(os.path.join(wd, "/EnsemblData/")))[1] for dir in directories: if "release" in dir: localversion = sorted(directories, reverse=True)[0] @@ -51,7 +51,7 @@ def get_current_local_version(self): print("No Version installed !") return None - def check_version_difference(self, organism): + def check_version_difference(self, organism, wd): local_version = self.localversion remote_version = self.remoteversion @@ -64,16 +64,16 @@ def check_version_difference(self, organism): print("Outdated Version detected ! local: " + local_version + " remote: " + remote_version) return True else: - if self.check_organism(organism, local_version): + if self.check_organism(organism, local_version, wd): return True else: return False - def download_currentversion_version(self, version, organism): + def download_currentversion_version(self, version, organism, wd): # Download Base File - targetfolder = os.path.join("./EnsemblData/", version, organism) + targetfolder = os.path.join(wd, "/EnsemblData/", version, organism) os.makedirs(targetfolder) folder_url = "/pub/"+version+"/regulation/"+organism+"/" self.site_ftp.change_dir(folder_url) diff --git a/bin/Modules/Ensembl/GTFGen.py b/bin/Modules/Ensembl/GTFGen.py index a4de58a..381bef3 100644 --- a/bin/Modules/Ensembl/GTFGen.py +++ b/bin/Modules/Ensembl/GTFGen.py @@ -5,14 +5,14 @@ class GTFGen: - def __init__(self, organism, release): + def __init__(self, organism, release, wd): - self.gff_lines = self.get_organism_as_gff(organism, release) + self.gff_lines = self.get_organism_as_gff(organism, release, wd) self.value_map = {0: "ACTIVE", 1: "POISED", 2: "REPRESSED", 3: "INACTIVE", 4: "NA"} - def get_organism_as_gff(self, organism, release): + def get_organism_as_gff(self, organism, release, wd): - directory = os.path.join("./EnsemblData/", release, organism) + directory = os.path.join(wd, "/EnsemblData/", release, organism) inputfile = "" for file in os.listdir(directory): if file.endswith("gff.gz"): diff --git a/bin/Modules/ucsc/ucsc.py b/bin/Modules/ucsc/ucsc.py index 9d10108..99788b7 100644 --- a/bin/Modules/ucsc/ucsc.py +++ b/bin/Modules/ucsc/ucsc.py @@ -7,18 +7,19 @@ class UcscGtf: - def __init__(self, org): + def __init__(self, org, wd): self.organism_id = self.get_organism_id(org) self.link = "http://hgdownload.soe.ucsc.edu/gbdb/"+self.organism_id+"/ncbiRefSeq/refSeqFuncElems.bb" - self.output = "./UCSCData/"+self.organism_id+".bed" + self.output = os.path.join(wd,"/UCSCData/"+self.organism_id+".bed") + self.path_to_bin = os.path.join(wd, "/Modules/ucsc/bigBedToBed") print("Getting UCSC Data") self.generate_gff_file() - self.ucsc_categories = self.get_activity_categories(org) + self.ucsc_categories = self.get_activity_categories(org, wd) self.gtf_lines = self.read_gff_to_gtf() print("UCSC finished !") def generate_gff_file(self): - callstring = ["./Modules/ucsc/bigBedToBed", self.link, self.output] + callstring = [self.path_to_bin, self.link, self.output] subprocess.call(callstring) def read_gff_to_gtf(self): @@ -65,8 +66,8 @@ def get_organism_id(org): return "mm10" @staticmethod - def get_activity_categories(organism): - path_to_config = os.path.join("../config/celltypes_" + organism + ".json") + def get_activity_categories(organism, wd): + path_to_config = os.path.join(wd, "/config/celltypes_" + organism + ".json") categories = {} with open(path_to_config) as input_file: data = json.loads(input_file.read()) @@ -76,15 +77,4 @@ def get_activity_categories(organism): return categories def get_gtf(self): - return self.gtf_lines - - def test_save_to_file(self): - - with open("./results/test.gtf", "w") as file: - write_it = csv.writer(file, delimiter='\t') - for line in self.gtf_lines: - write_it.writerow(line) - - -#u = UcscGtf("homo_sapiens") -#u.test_save_to_file() \ No newline at end of file + return self.gtf_lines \ No newline at end of file diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index 294e539..c3f669b 100644 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -18,11 +18,11 @@ def check_for_local_folder(): os.mkdir( "./UCSCData" ) -def main_script(org, tissuetype=None): +def main_script(org, wd, tissuetype=None): check_for_local_folder() - ucsc = UcscGtf(org) - ense = Ensembl(org) + ucsc = UcscGtf(org, wd) + ense = Ensembl(org, wd) print("Getting Unique Results") unique_filter = UniqueFilter(ense.get_gtf(), ucsc.get_gtf(), tissuetype) ResultSaver(unique_filter.get_results(), org, tissuetype) @@ -32,10 +32,11 @@ def main_script(org, tissuetype=None): parser = argparse.ArgumentParser(description='GTF-Generator from UCSC Table Browser and Ensembl Regulatory Build' ) parser.add_argument('organism', help='Source organism [ homo_sapiens or mus_musculus ]', action='store', nargs='?', type=str) parser.add_argument('--tissue', help='Tissue- or Celltype(s)', action='store', nargs='*', type=str) + parser.add_argument('--wd', help='Working directory. default: "."', default=".", action='store', type=str) args = vars(parser.parse_args()) if args["organism"]: #print(args["tissue"]) - main_script(args["organism"], args["tissue"]) + main_script(args["organism"], args["wd"], args["tissue"]) else: print("No Arguments found -> See ./RegGTFExtractor.py -h for help.") From 49c356b55bdfe6a21de6097bf9126c2b1acb6c5f Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 14:43:54 +0100 Subject: [PATCH 097/206] Changed Paths --- bin/Modules/Ensembl/ActivityCategorizer.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/Modules/Ensembl/ActivityCategorizer.py b/bin/Modules/Ensembl/ActivityCategorizer.py index e29ac4b..d8dfa42 100644 --- a/bin/Modules/Ensembl/ActivityCategorizer.py +++ b/bin/Modules/Ensembl/ActivityCategorizer.py @@ -33,8 +33,8 @@ def read_config(self, organism, wd): c_dict = {} path_to_config = os.path.join(wd, "../config/celltypes_"+organism+".json") - with open(path_to_config) as input: - data = json.loads(input.read()) + with open(path_to_config) as input_file: + data = json.loads(input_file.read()) for x in data: c_dict[x["type"]] = x["alias_ensembl"] self.folderlist.extend(x["alias_ensembl"]) From b25f97c68b4e5d22cd9c07695fee007fea6ce30a Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 14:47:39 +0100 Subject: [PATCH 098/206] Changed Paths --- bin/Modules/Ensembl/ActivityCategorizer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/Modules/Ensembl/ActivityCategorizer.py b/bin/Modules/Ensembl/ActivityCategorizer.py index d8dfa42..f1973c5 100644 --- a/bin/Modules/Ensembl/ActivityCategorizer.py +++ b/bin/Modules/Ensembl/ActivityCategorizer.py @@ -32,7 +32,7 @@ def get_categorization(self): def read_config(self, organism, wd): c_dict = {} - path_to_config = os.path.join(wd, "../config/celltypes_"+organism+".json") + path_to_config = os.path.join(wd, "/config/celltypes_"+organism+".json") with open(path_to_config) as input_file: data = json.loads(input_file.read()) for x in data: From afe9eb2bdb341b5c67219c3427ff879ba0b1f402 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Tue, 4 Dec 2018 08:47:52 -0500 Subject: [PATCH 099/206] minor changes --- nextflow.config | 4 ---- pipeline.nf | 2 ++ 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/nextflow.config b/nextflow.config index 6f44ba3..2e84338 100644 --- a/nextflow.config +++ b/nextflow.config @@ -1,9 +1,5 @@ createTimeout = 60 -params { - -} - env { path_bin = $workflow.projectDir/bin path_env = $workflow.projectDir/masterenv.yml diff --git a/pipeline.nf b/pipeline.nf index a8e15dc..d8e2669 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -12,6 +12,8 @@ process footprint_extraction { conda "${path_env}" tag{name} + publishDir '${out}', mode: 'copy', pattern: '*.bed' + publishDir '/mnt/agnerds/Rene.Wiegandt/log', mode: 'copy', pattern: '*.log' input: set name, file (bigWig), file (bed) from footprint_in From a53aa722fea52ae5f1404cab62f987a0fe77a5f5 Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 14:51:17 +0100 Subject: [PATCH 100/206] Changed Paths --- bin/Modules/ucsc/ucsc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/Modules/ucsc/ucsc.py b/bin/Modules/ucsc/ucsc.py index 99788b7..d48ff1a 100644 --- a/bin/Modules/ucsc/ucsc.py +++ b/bin/Modules/ucsc/ucsc.py @@ -10,7 +10,7 @@ class UcscGtf: def __init__(self, org, wd): self.organism_id = self.get_organism_id(org) self.link = "http://hgdownload.soe.ucsc.edu/gbdb/"+self.organism_id+"/ncbiRefSeq/refSeqFuncElems.bb" - self.output = os.path.join(wd,"/UCSCData/"+self.organism_id+".bed") + self.output = os.path.join(wd, "/UCSCData/"+self.organism_id+".bed") self.path_to_bin = os.path.join(wd, "/Modules/ucsc/bigBedToBed") print("Getting UCSC Data") self.generate_gff_file() From 1285f1a7c819338caab6465aedc2106015cf11aa Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 14:53:15 +0100 Subject: [PATCH 101/206] Changed Paths --- bin/RegGTFExtractor.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index c3f669b..373f435 100644 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -8,14 +8,14 @@ import os -def check_for_local_folder(): +def check_for_local_folder(wd): - if not os.path.isdir("./EnsemblData"): + if not os.path.isdir(os.path.join(wd, "/EnsemblData")): - os.mkdir("./EnsemblData") + os.mkdir(os.path.join(wd, "/EnsemblData")) - if not os.path.isdir( "./UCSCData" ): - os.mkdir( "./UCSCData" ) + if not os.path.isdir(os.path.join(wd, "/UCSCData" )): + os.mkdir(os.path.join(wd, "/UCSCData" )) def main_script(org, wd, tissuetype=None): From 512d262368692ccdd0acf23a075462a551612256 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Tue, 4 Dec 2018 08:55:52 -0500 Subject: [PATCH 102/206] moved config for gtf creation --- {config => bin/config}/celltypes_homo_sapiens.json | 0 {config => bin/config}/celltypes_mus_musculus.json | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename {config => bin/config}/celltypes_homo_sapiens.json (100%) rename {config => bin/config}/celltypes_mus_musculus.json (100%) diff --git a/config/celltypes_homo_sapiens.json b/bin/config/celltypes_homo_sapiens.json similarity index 100% rename from config/celltypes_homo_sapiens.json rename to bin/config/celltypes_homo_sapiens.json diff --git a/config/celltypes_mus_musculus.json b/bin/config/celltypes_mus_musculus.json similarity index 100% rename from config/celltypes_mus_musculus.json rename to bin/config/celltypes_mus_musculus.json From 4c3f0139e90993883f94b787c1a36721fc5eb3b8 Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 15:00:56 +0100 Subject: [PATCH 103/206] Fixed: "No Module named bin Error" --- bin/Modules/Ensembl/Ensembl.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/Modules/Ensembl/Ensembl.py b/bin/Modules/Ensembl/Ensembl.py index d80ce11..f0a922c 100644 --- a/bin/Modules/Ensembl/Ensembl.py +++ b/bin/Modules/Ensembl/Ensembl.py @@ -1,7 +1,7 @@ -from bin.Modules.Ensembl.ActivityTable import ActivityTable -from bin.Modules.Ensembl.FTPHandling.VersionChecker import EnsemblRegulationFTPRetriever as FTPRetriever -from bin.Modules.Ensembl.ActivityCategorizer import ActivityCategorizer -from bin.Modules.Ensembl.GTFGen import GTFGen +from Modules.Ensembl.ActivityTable import ActivityTable +from Modules.Ensembl.FTPHandling.VersionChecker import EnsemblRegulationFTPRetriever as FTPRetriever +from Modules.Ensembl.ActivityCategorizer import ActivityCategorizer +from Modules.Ensembl.GTFGen import GTFGen class Ensembl: From a0165a9e6cb645df35d4838acfcf8b94ac2d56bd Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 15:03:40 +0100 Subject: [PATCH 104/206] Fixed: "No Module named bin Error" V2 --- bin/Modules/Ensembl/FTPHandling/URLRetrieve.py | 2 +- bin/Modules/Ensembl/FTPHandling/VersionChecker.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py b/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py index 0c164d7..598a6f5 100644 --- a/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py +++ b/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py @@ -1,5 +1,5 @@ import ftplib -from bin.Modules.Ensembl.FTPHandling.FTPEntry import FTPEntry +from Modules.Ensembl.FTPHandling.FTPEntry import FTPEntry class FTPHandler: diff --git a/bin/Modules/Ensembl/FTPHandling/VersionChecker.py b/bin/Modules/Ensembl/FTPHandling/VersionChecker.py index 6992dde..26c284d 100644 --- a/bin/Modules/Ensembl/FTPHandling/VersionChecker.py +++ b/bin/Modules/Ensembl/FTPHandling/VersionChecker.py @@ -1,4 +1,4 @@ -from bin.Modules.Ensembl.FTPHandling.URLRetrieve import FTPHandler +from Modules.Ensembl.FTPHandling.URLRetrieve import FTPHandler import os.path From 396e18354fb83d9dc7f6bee901f413ecde7e722d Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 15:05:19 +0100 Subject: [PATCH 105/206] Fixed: "No Module named bin Error" V2 --- bin/RegGTFExtractor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index 373f435..a99c708 100644 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -20,7 +20,7 @@ def check_for_local_folder(wd): def main_script(org, wd, tissuetype=None): - check_for_local_folder() + check_for_local_folder(wd) ucsc = UcscGtf(org, wd) ense = Ensembl(org, wd) print("Getting Unique Results") From 2dee4f634d768d6aff344e0c1bf1b4bf1d84a146 Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 15:15:12 +0100 Subject: [PATCH 106/206] Fixed: "No Module named bin Error" V2 --- bin/Modules/ucsc/ucsc.py | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/Modules/ucsc/ucsc.py b/bin/Modules/ucsc/ucsc.py index d48ff1a..1c29337 100644 --- a/bin/Modules/ucsc/ucsc.py +++ b/bin/Modules/ucsc/ucsc.py @@ -13,6 +13,7 @@ def __init__(self, org, wd): self.output = os.path.join(wd, "/UCSCData/"+self.organism_id+".bed") self.path_to_bin = os.path.join(wd, "/Modules/ucsc/bigBedToBed") print("Getting UCSC Data") + print("Path to Bin: " + self.path_to_bin) self.generate_gff_file() self.ucsc_categories = self.get_activity_categories(org, wd) self.gtf_lines = self.read_gff_to_gtf() From 38c9bae54f0463df5c5f59d333a5726c291119da Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 15:20:19 +0100 Subject: [PATCH 107/206] Fixed: "No Module named bin Error" V2 --- bin/Modules/SaveResults.py | 6 +++--- bin/RegGTFExtractor.py | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bin/Modules/SaveResults.py b/bin/Modules/SaveResults.py index e13aa6a..09c4955 100644 --- a/bin/Modules/SaveResults.py +++ b/bin/Modules/SaveResults.py @@ -4,14 +4,14 @@ class ResultSaver: - def __init__(self, results, organism, tissue): + def __init__(self, results, organism, tissue, wd): print("Save results to File !") self.path = "" if tissue: - self.path = os.path.join("./"+organism+"_filtered.gtf") + self.path = os.path.join(wd, "/"+organism+"_filtered.gtf") else: - self.path = os.path.join("./"+organism+".gtf") + self.path = os.path.join(wd, "./"+organism+".gtf") with open(self.path, "w") as file: write_it = csv.writer(file, delimiter='\t') diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index a99c708..20f2828 100644 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -25,17 +25,17 @@ def main_script(org, wd, tissuetype=None): ense = Ensembl(org, wd) print("Getting Unique Results") unique_filter = UniqueFilter(ense.get_gtf(), ucsc.get_gtf(), tissuetype) - ResultSaver(unique_filter.get_results(), org, tissuetype) + ResultSaver(unique_filter.get_results(), org, tissuetype, wd) if __name__ == '__main__': parser = argparse.ArgumentParser(description='GTF-Generator from UCSC Table Browser and Ensembl Regulatory Build' ) parser.add_argument('organism', help='Source organism [ homo_sapiens or mus_musculus ]', action='store', nargs='?', type=str) parser.add_argument('--tissue', help='Tissue- or Celltype(s)', action='store', nargs='*', type=str) - parser.add_argument('--wd', help='Working directory. default: "."', default=".", action='store', type=str) + parser.add_argument('--wd', help='Working directory. default: "."', action='store', nargs='*', type=str) args = vars(parser.parse_args()) if args["organism"]: - #print(args["tissue"]) + print("Working Dir: " + args["wd"]) main_script(args["organism"], args["wd"], args["tissue"]) else: print("No Arguments found -> See ./RegGTFExtractor.py -h for help.") From 8c843fb670623b941ad89aa72d60a68d40ef34f8 Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 15:24:03 +0100 Subject: [PATCH 108/206] Fixed: "No Module named bin Error" V2 --- bin/RegGTFExtractor.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index 20f2828..27a6255 100644 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -32,7 +32,7 @@ def main_script(org, wd, tissuetype=None): parser = argparse.ArgumentParser(description='GTF-Generator from UCSC Table Browser and Ensembl Regulatory Build' ) parser.add_argument('organism', help='Source organism [ homo_sapiens or mus_musculus ]', action='store', nargs='?', type=str) parser.add_argument('--tissue', help='Tissue- or Celltype(s)', action='store', nargs='*', type=str) - parser.add_argument('--wd', help='Working directory. default: "."', action='store', nargs='*', type=str) + parser.add_argument('--wd', help='Working directory. default: "."', action='store', default='.', type=str) args = vars(parser.parse_args()) if args["organism"]: print("Working Dir: " + args["wd"]) From 0f2822d840c6be29c088c1c58ecfa544a8f74819 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Tue, 4 Dec 2018 15:27:58 +0100 Subject: [PATCH 109/206] Update masterenv.yml --- masterenv.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/masterenv.yml b/masterenv.yml index 72d2b64..2c1879f 100644 --- a/masterenv.yml +++ b/masterenv.yml @@ -3,21 +3,16 @@ name: masterenv channels: - bioconda - conda-forge - - defaults - - r dependencies: - bedtools - python - - r-essentials - r-seqinr - numpy - pybigWig -# cluster - cd-hit - jellyfish - r-base>=3.5.1 - r-data.table - # - r-seqinr - r-pbapply - r-igraph - r-stringi From bbf21175f0e0a4b48b7ff138327b3d149c40dc3c Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Tue, 4 Dec 2018 15:29:56 +0100 Subject: [PATCH 110/206] Update masterenv.yml --- masterenv.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/masterenv.yml b/masterenv.yml index 2c1879f..846cb71 100644 --- a/masterenv.yml +++ b/masterenv.yml @@ -9,6 +9,7 @@ dependencies: - r-seqinr - numpy - pybigWig + #clustering - cd-hit - jellyfish - r-base>=3.5.1 @@ -19,3 +20,4 @@ dependencies: - r-stringr - r-optparse - bioconductor-iranges +# From d22a0e130f321a0523a1f90023185177394c729b Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 4 Dec 2018 15:34:04 +0100 Subject: [PATCH 111/206] Fixed: "Paths" V2 --- bin/Modules/Ensembl/ActivityCategorizer.py | 4 ++-- bin/Modules/Ensembl/ActivityTable.py | 2 +- bin/Modules/Ensembl/FTPHandling/VersionChecker.py | 6 +++--- bin/Modules/Ensembl/GTFGen.py | 2 +- bin/Modules/SaveResults.py | 4 ++-- bin/Modules/ucsc/ucsc.py | 8 ++++---- bin/RegGTFExtractor.py | 8 ++++---- 7 files changed, 17 insertions(+), 17 deletions(-) diff --git a/bin/Modules/Ensembl/ActivityCategorizer.py b/bin/Modules/Ensembl/ActivityCategorizer.py index f1973c5..3ef0258 100644 --- a/bin/Modules/Ensembl/ActivityCategorizer.py +++ b/bin/Modules/Ensembl/ActivityCategorizer.py @@ -32,7 +32,7 @@ def get_categorization(self): def read_config(self, organism, wd): c_dict = {} - path_to_config = os.path.join(wd, "/config/celltypes_"+organism+".json") + path_to_config = os.path.join(wd +"/config/celltypes_"+organism+".json") with open(path_to_config) as input_file: data = json.loads(input_file.read()) for x in data: @@ -45,7 +45,7 @@ def get_activity_data(self, release, organism, wd): for folder in self.folderlist: # Generate path to binary File - file = os.path.join(wd, "/EnsemblData", release, organism, "activity", folder, "table.bin") + file = os.path.join(wd + "/EnsemblData", release, organism, "activity", folder, "table.bin") with open(file, "rb") as tables: self.activity[folder] = bytearray(tables.read()) diff --git a/bin/Modules/Ensembl/ActivityTable.py b/bin/Modules/Ensembl/ActivityTable.py index 105c351..34f4719 100644 --- a/bin/Modules/Ensembl/ActivityTable.py +++ b/bin/Modules/Ensembl/ActivityTable.py @@ -16,7 +16,7 @@ class ActivityTable: """ def __init__(self, organism, current_release, wd): - self.link = os.path.join(wd, "/EnsemblData/", current_release, organism, "activity") + self.link = os.path.join(wd + "/EnsemblData/", current_release, organism, "activity") self.folders = next(os.walk(self.link))[1] self.generator = ATGenerator(["activity=ACTIVE", "activity=POISED", diff --git a/bin/Modules/Ensembl/FTPHandling/VersionChecker.py b/bin/Modules/Ensembl/FTPHandling/VersionChecker.py index 26c284d..9c3500d 100644 --- a/bin/Modules/Ensembl/FTPHandling/VersionChecker.py +++ b/bin/Modules/Ensembl/FTPHandling/VersionChecker.py @@ -32,14 +32,14 @@ def get_current_ftp_version(self): return c_release def check_organism(self, organism, release, wd): - if organism in next(os.walk(os.path.join(wd, "/EnsemblData/"+release+"/")))[1]: + if organism in next(os.walk(os.path.join(wd+"/EnsemblData/"+release+"/")))[1]: return False else: print("No Local Version for "+organism+" installed. Installing...") return True def get_current_local_version(self, wd): - directories = next(os.walk(os.path.join(wd, "/EnsemblData/")))[1] + directories = next(os.walk(os.path.join(wd+"/EnsemblData/")))[1] for dir in directories: if "release" in dir: localversion = sorted(directories, reverse=True)[0] @@ -73,7 +73,7 @@ def download_currentversion_version(self, version, organism, wd): # Download Base File - targetfolder = os.path.join(wd, "/EnsemblData/", version, organism) + targetfolder = os.path.join(wd+"/EnsemblData/", version, organism) os.makedirs(targetfolder) folder_url = "/pub/"+version+"/regulation/"+organism+"/" self.site_ftp.change_dir(folder_url) diff --git a/bin/Modules/Ensembl/GTFGen.py b/bin/Modules/Ensembl/GTFGen.py index 381bef3..cd70f3b 100644 --- a/bin/Modules/Ensembl/GTFGen.py +++ b/bin/Modules/Ensembl/GTFGen.py @@ -12,7 +12,7 @@ def __init__(self, organism, release, wd): def get_organism_as_gff(self, organism, release, wd): - directory = os.path.join(wd, "/EnsemblData/", release, organism) + directory = os.path.join(wd + "/EnsemblData/", release, organism) inputfile = "" for file in os.listdir(directory): if file.endswith("gff.gz"): diff --git a/bin/Modules/SaveResults.py b/bin/Modules/SaveResults.py index 09c4955..a15ffc3 100644 --- a/bin/Modules/SaveResults.py +++ b/bin/Modules/SaveResults.py @@ -9,9 +9,9 @@ def __init__(self, results, organism, tissue, wd): print("Save results to File !") self.path = "" if tissue: - self.path = os.path.join(wd, "/"+organism+"_filtered.gtf") + self.path = os.path.join(wd+"/"+organism+"_filtered.gtf") else: - self.path = os.path.join(wd, "./"+organism+".gtf") + self.path = os.path.join(wd+"/"+organism+".gtf") with open(self.path, "w") as file: write_it = csv.writer(file, delimiter='\t') diff --git a/bin/Modules/ucsc/ucsc.py b/bin/Modules/ucsc/ucsc.py index 1c29337..49e44ad 100644 --- a/bin/Modules/ucsc/ucsc.py +++ b/bin/Modules/ucsc/ucsc.py @@ -10,8 +10,8 @@ class UcscGtf: def __init__(self, org, wd): self.organism_id = self.get_organism_id(org) self.link = "http://hgdownload.soe.ucsc.edu/gbdb/"+self.organism_id+"/ncbiRefSeq/refSeqFuncElems.bb" - self.output = os.path.join(wd, "/UCSCData/"+self.organism_id+".bed") - self.path_to_bin = os.path.join(wd, "/Modules/ucsc/bigBedToBed") + self.output = os.path.join(wd + "/UCSCData/"+self.organism_id+".bed") + self.path_to_bin = os.path.join(wd + "/Modules/ucsc/bigBedToBed") print("Getting UCSC Data") print("Path to Bin: " + self.path_to_bin) self.generate_gff_file() @@ -68,7 +68,7 @@ def get_organism_id(org): @staticmethod def get_activity_categories(organism, wd): - path_to_config = os.path.join(wd, "/config/celltypes_" + organism + ".json") + path_to_config = os.path.join(wd+"/config/celltypes_" + organism + ".json") categories = {} with open(path_to_config) as input_file: data = json.loads(input_file.read()) @@ -78,4 +78,4 @@ def get_activity_categories(organism, wd): return categories def get_gtf(self): - return self.gtf_lines \ No newline at end of file + return self.gtf_lines diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index 27a6255..0b09b51 100644 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -10,12 +10,12 @@ def check_for_local_folder(wd): - if not os.path.isdir(os.path.join(wd, "/EnsemblData")): + if not os.path.isdir(os.path.join(wd+"/EnsemblData")): - os.mkdir(os.path.join(wd, "/EnsemblData")) + os.mkdir(os.path.join(wd+"/EnsemblData")) - if not os.path.isdir(os.path.join(wd, "/UCSCData" )): - os.mkdir(os.path.join(wd, "/UCSCData" )) + if not os.path.isdir(os.path.join(wd+"/UCSCData" )): + os.mkdir(os.path.join(wd+"/UCSCData" )) def main_script(org, wd, tissuetype=None): From 6bc50bec5a5f6f68cb62b68a46acb58ac35a1235 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Tue, 4 Dec 2018 09:45:09 -0500 Subject: [PATCH 112/206] added clustering + reducing --- pipeline.nf | 27 ++++++++++++++++++++++----- 1 file changed, 22 insertions(+), 5 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index d8e2669..5ed2eac 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -51,15 +51,31 @@ process overlap_with_known_TFBS { conda "${path_env}" input: - set file (bed_footprints), val (bed_motifs), file (fasta) from for_overlap + set name, file (bed_footprints), val (bed_motifs), file (fasta) from for_overlap output: - file ('*.bed') into bed_for_clustering + set name, file ('*.bed') into bed_for_reducing script: motif_list = bed_motifs.toString().replaceAll(/\s|\[|\]/,"") """ - ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_list} --fasta ${fasta} -o ${name_placeholder} -min ${params.min_size_fp} -max ${params.max_size_fp} + ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_list} --fasta ${fasta} -o ${name}.bed -min ${params.min_size_fp} -max ${params.max_size_fp} + """ +} + + +process reduce_bed { + conda "${path_env}" + + input: + set name, file (bed) from bed_for_reducing + + output: + set name, file ('*.bed') into bed_for_clustering + + script: + """ + Rscript ${path_bin}/reduce_bed.R -i ${bed} -k ${params.kmer} -m ${params.aprox_motif_len} -o ${name}_reduced.bed -t ${params.threads} """ } @@ -68,13 +84,14 @@ process clustering { conda "${path_env}" input: - file (bed) from bed_for_clustering + set name, file (bed) from bed_for_clustering output: set name, file ('*.bed') into bed_for_motif_esitmation script: """ + Rscript ${path_bin}/cdhit_wrapper.R -i ${bed} -A ${params.sequence_coverage} -o ${name}_clusterd.bed """ } @@ -232,7 +249,7 @@ process create_GTF { script: """ - python ${path_bin}/RegGTFExtractor.py ${params.organism} --tissue ${params.tissues} + python ${path_bin}/RegGTFExtractor.py ${params.organism} --tissue ${params.tissues} --wd ${path_bin} """ } From 460752294fbedc350c4a4bfd6decdb378a5d9633 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Tue, 4 Dec 2018 09:45:28 -0500 Subject: [PATCH 113/206] added parameter --- config/cluster.config | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/config/cluster.config b/config/cluster.config index e69de29..3dce063 100644 --- a/config/cluster.config +++ b/config/cluster.config @@ -0,0 +1,7 @@ +params{ + sequence_coverage=8 + + kmer=10 + aprox_motif_len=10 + threads=1 +} From 24a5a063c0f5d5305f2857fb29229f5c73c78b35 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Wed, 5 Dec 2018 09:49:48 +0100 Subject: [PATCH 114/206] fixed minimum sequence length and added check --- bin/reduce_bed.R | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index 223c946..ea2c017 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -8,7 +8,7 @@ option_list <- list( make_option(opt_str = c("-o", "--output"), default = "reduced.bed", help = "Output file. Default = %default", metavar = "character"), make_option(opt_str = c("-t", "--threads"), default = 1, help = "Number of threads to use. Use -1 for all available cores. Default = %default", metavar = "integer"), make_option(opt_str = c("-c", "--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical"), - make_option(opt_str = c("-s", "--min_seq_length"), default = NULL, help = "Remove sequences below this length. Defaults to motif length.", metavar = "integer", type = "integer") + make_option(opt_str = c("-s", "--min_seq_length"), default = NULL, help = "Remove sequences below this length. Defaults to the maximum value of motif and kmer and can not be lower.", metavar = "integer", type = "integer") # TODO more args ) @@ -25,13 +25,13 @@ opt <- parse_args(opt_parser) #' @param output Output file #' @param threads Number of threads. #' @param clean Delete all temporary files. -#' @param minoverlap_kmer Minimum required overlap between kmers. # TODO -#' @param minoverlap_motif Minimum required overlap between motif and kmer. # TODO -#' @param min_seq_length Must be smaller or equal to kmer and motif. Default = motif. +#' @param minoverlap_kmer Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges.# TODO +#' @param minoverlap_motif Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation.# TODO +#' @param min_seq_length Must be greater or equal to kmer and motif. Default = max(c(motif, kmer)). #' #' @return reduced bed #' TODO check whether jellyfish is installed -reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", threads = NULL, clean = TRUE, minoverlap_kmer, minoverlap_motif, min_seq_length = motif) { +reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", threads = NULL, clean = TRUE, minoverlap_kmer, minoverlap_motif, min_seq_length = max(c(motif, kmer))) { # get number of available cores if (threads == -1) { threads <- parallel::detectCores() @@ -53,6 +53,10 @@ reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", thr } # remove sequences below minimum length + if (min_seq_length < max(c(kmer, motif))) { + stop("Minimum sequence length must be greater or equal to ", max(c(motif, kmer)), " (maximum value of kmer and motif).") + } + total_rows <- nrow(bed_table) bed_table <- bed_table[nchar(sequence) > min_seq_length] if (total_rows > nrow(bed_table)) { From 689331e5f4cf7156f118db1f2aa5ebb3041eb817 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Wed, 5 Dec 2018 10:12:45 +0100 Subject: [PATCH 115/206] implemented minoverlap_kmer & minoverlap_motif --- bin/reduce_bed.R | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index ea2c017..c0b1ae7 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -8,7 +8,9 @@ option_list <- list( make_option(opt_str = c("-o", "--output"), default = "reduced.bed", help = "Output file. Default = %default", metavar = "character"), make_option(opt_str = c("-t", "--threads"), default = 1, help = "Number of threads to use. Use -1 for all available cores. Default = %default", metavar = "integer"), make_option(opt_str = c("-c", "--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical"), - make_option(opt_str = c("-s", "--min_seq_length"), default = NULL, help = "Remove sequences below this length. Defaults to the maximum value of motif and kmer and can not be lower.", metavar = "integer", type = "integer") + make_option(opt_str = c("-s", "--min_seq_length"), default = NULL, help = "Remove sequences below this length. Defaults to the maximum value of motif and kmer and can not be lower.", metavar = "integer", type = "integer"), + make_option(opt_str = c("-ko", "--minoverlap_kmer"), default = NULL, help = "Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges. Can not be greater than kmer length. Default = kmer - 1", metavar = "integer", type = "integer"), + make_option(opt_str = c("-mo", "--minoverlap_motif"), default = NULL, help = "Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation. Can not be greater than motif and kmer length. Default = ceiling(motif / 2)", metavar = "integer", type = "integer") # TODO more args ) @@ -25,13 +27,13 @@ opt <- parse_args(opt_parser) #' @param output Output file #' @param threads Number of threads. #' @param clean Delete all temporary files. -#' @param minoverlap_kmer Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges.# TODO -#' @param minoverlap_motif Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation.# TODO +#' @param minoverlap_kmer Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges. Can not be greater than kmer length. Default = kmer - 1 +#' @param minoverlap_motif Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation. Can not be greater than motif and kmer length. Default = ceiling(motif / 2) #' @param min_seq_length Must be greater or equal to kmer and motif. Default = max(c(motif, kmer)). #' #' @return reduced bed #' TODO check whether jellyfish is installed -reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", threads = NULL, clean = TRUE, minoverlap_kmer, minoverlap_motif, min_seq_length = max(c(motif, kmer))) { +reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", threads = NULL, clean = TRUE, minoverlap_kmer = kmer - 1, minoverlap_motif = ceiling(motif / 2), min_seq_length = max(c(motif, kmer))) { # get number of available cores if (threads == -1) { threads <- parallel::detectCores() @@ -91,16 +93,16 @@ reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", thr data.table::setorder(kmer_counts, -V2) # compute number of hits to keep - keep_hits <- significant_kmer(bed_table, kmer = kmer, motif = motif) + keep_hits <- significant_kmer(bed_table, kmer = kmer, motif = motif, minoverlap = minoverlap_motif) # reduce kmer - reduced_kmer <- reduce_kmer(kmer = kmer_counts, keep_hits) + reduced_kmer <- reduce_kmer(kmer = kmer_counts, significant = keep_hits) message("Find kmer in sequences.") # find k-mer in sequences # TODO minoverlap as parameter # columns: name, start, end, width - ranges_table <- find_kmer_regions(bed = bed_table, kmer_counts = reduced_kmer, minoverlap = kmer - 1, threads = threads) + ranges_table <- find_kmer_regions(bed = bed_table, kmer_counts = reduced_kmer, minoverlap = minoverlap_kmer, threads = threads) names(ranges_table)[1:2] <- c("relative_start", "relative_end") # merge ranged_table with bed_table + keep column order @@ -139,7 +141,7 @@ reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", thr #' @return Number of interesting kmer. significant_kmer <- function(bed, kmer, motif, minoverlap = ceiling(motif / 2)) { if (minoverlap > kmer || minoverlap > motif) { - stop("Kmer & motif must be greater or equal than minoverlap!") + stop("Kmer & motif must be greater or equal to minoverlap!") } # minimum sequence length to get all interesting overlaps From 617ff9f56b7fb3074e24ae4985ef8b8556081ea9 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Wed, 5 Dec 2018 11:25:04 +0100 Subject: [PATCH 116/206] better docu; reorder data in reduce_kmer() --- bin/reduce_bed.R | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index c0b1ae7..d539399 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -100,7 +100,6 @@ reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", thr message("Find kmer in sequences.") # find k-mer in sequences - # TODO minoverlap as parameter # columns: name, start, end, width ranges_table <- find_kmer_regions(bed = bed_table, kmer_counts = reduced_kmer, minoverlap = minoverlap_kmer, threads = threads) names(ranges_table)[1:2] <- c("relative_start", "relative_end") @@ -131,7 +130,7 @@ reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", thr data.table::fwrite(merged, file = output, sep = "\t", col.names = FALSE) } -#' returns sum of top x kmer frequencies to keep +#' Predict how many interesting kmer are possible for the given data. #' #' @param bed Bed table with sequences in last column #' @param kmer Length of kmer @@ -158,9 +157,15 @@ significant_kmer <- function(bed, kmer, motif, minoverlap = ceiling(motif / 2)) return(topx) } -#' @param kmer Kmer table -#' @param significant +#' Orders kmer table after count descending and keeps all kmer with a cumulative sum below the given significance threshold. +#' +#' @param kmer Kmer data.table columns: kmer, count +#' @param significant Value from significant_kmer function. +#' +#' @return reduced data.table reduce_kmer <- function(kmer, significant) { + data.table::setorderv(kmer, cols = names(kmer)[2], order = -1) + kmer[, cumsum := cumsum(V2)] return(kmer[cumsum <= significant]) From 3de27010e46c9f704acdc44d7e38a6a7f4a0d3ef Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Wed, 5 Dec 2018 12:06:36 +0100 Subject: [PATCH 117/206] Rscript first line changes --- compareBed.sh | 63 ++++++++++++++++++++++++++++++++------------------- maxScore.R | 7 +++--- merge.R | 14 ++++++------ 3 files changed, 51 insertions(+), 33 deletions(-) diff --git a/compareBed.sh b/compareBed.sh index 279c9e3..2153b48 100644 --- a/compareBed.sh +++ b/compareBed.sh @@ -104,7 +104,8 @@ then echo "--------------------" echo " required parameter:" echo " -d --data the path to the .bed file of the footprints" - echo " -m --motifs the path to the directory where the .bed files of the scanned motifs are stored" + echo " -m --motifs Either the path to the directory where the .bed files of the scanned motifs are stored" + echo " Or a comma seperated list of files, e.g.: path1/file1,path2/file2,path3/file3" echo " -f --fasta the path to the .fasta file of genome" echo " " echo " optional parameter:" @@ -172,6 +173,9 @@ fi echo get sequences with no overlap cat $data > "$workdir"/pass1Tr.bed help=true + +if [ -d $"motifs" ] +then for i in "$motifs"/*.bed do if [ $help == true ] @@ -184,6 +188,22 @@ do fi echo $i done +else +declare -a motiffiles=(`echo $motifs | sed 's/,/ /g'`) +for i in ${motiffiles[@]} +do + if [ $help == true ] + then + help=false + bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed + else + help=true + bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed + fi + echo $i +done +fi + if [ $help == false ] then cat "$workdir"/pass1TrHelp.bed > "$workdir"/pass1Tr.bed @@ -199,6 +219,9 @@ Rscript --vanilla /mnt/agnerds/Jannik.Hamp/maxScore.R "$workdir"/pass1Fa.bed #3 subtract overlapping regions for additional motifs echo "also get subsequences with no overlap of overlapping sequences" help=true + +if [ -d $"motifs" ] +then for i in "$motifs"/*.bed do if [ $help == true ] @@ -211,6 +234,21 @@ do fi echo $i done +else +for i in ${motiffiles[@]} +do + if [ $help == true ] + then + help=false + bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed + else + help=true + bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed + fi + echo $i +done +fi + if [ $help == false ] then @@ -227,25 +265,4 @@ bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$output" bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta #6 clean up -rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed - - -#1. first filter. no overlap vs. overlap -#bedtools intersect -v -a $data -b $motifs > "$workdir"/pass1Tr.bed -#bedtools intersect -wa -a $data -b $motifs > "$workdir"/pass1Fa.bed - -#2. compute absolut maxscore position -#Rscript --vanilla maxScore.R "$workdir"/pass1Fa.bed - -#3. subtract overlapping regions for additional motifs -#bedtools subtract -a "$workdir"/pass1Fa.bed -b $motifs > "$workdir"/pass2Tr.bed - -#4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition -#Rscript --vanilla merge.R $min $max "$workdir" - -#5. add fasta sequences to bed and create fasta file -#bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$workdir"/"$output" -#bedtools getfasta -name -fi $fasta -bed "$workdir"/"$output" -fo "$workdir"/"$output".fasta - -#6 clean up -#rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed +rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed \ No newline at end of file diff --git a/maxScore.R b/maxScore.R index 4ea545b..1dfed4b 100644 --- a/maxScore.R +++ b/maxScore.R @@ -1,9 +1,10 @@ -#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +#!/bin/Rscript +library(data.table) args = commandArgs(TRUE) file = args[1] -tab = read.table(file, header=FALSE) +tab = fread(file, header=FALSE) colnames(tab) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") tab$maxpos = tab$start + tab$maxpos -write.table(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') +fwrite(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') diff --git a/merge.R b/merge.R index bbe3c9a..f491cb9 100644 --- a/merge.R +++ b/merge.R @@ -1,12 +1,13 @@ -#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +#!/bin/Rscript +library(data.table) args=commandArgs(TRUE) min=as.numeric(args[1]) max=as.numeric(args[2]) folder=args[3] -splitted = read.table(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) -colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") -p1 = read.table(paste(folder, "/pass1Tr.bed", sep=''), header=FALSE) -colnames(p1) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +splitted = fread(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) +colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") +p1 = fread(paste(folder, "/pass1Tr.bed", sep=''), header=TRUE) +colnames(p1) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") p1$maxpos = p1$start + p1$maxpos splitted=rbind(splitted, p1) @@ -19,5 +20,4 @@ splitted$length=splitted$stop - splitted$start splitted=cbind(splitted, containsMaxpos=0) splitted$containsMaxpos[intersect(which(splitted$start <= splitted$maxpos), which(splitted$stop > splitted$maxpos))] = 1 splitted$maxpos = splitted$maxpos - splitted$start -write.table(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') - +fwrite(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') From 527c4fa2e03686d487095f77387baa332255591d Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Wed, 5 Dec 2018 12:17:38 +0100 Subject: [PATCH 118/206] Delete README.md --- README.md | 15 --------------- 1 file changed, 15 deletions(-) delete mode 100644 README.md diff --git a/README.md b/README.md deleted file mode 100644 index 4dc88e2..0000000 --- a/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# compareBed.sh for filtering of new, yet unannotated motifs - -The script mainly utilizes bedtools for comparison. -The sequences in the bed-file of the experiment are compared with sequences of known motifs, also in bed-format. -Only sequences with no overlap with the known-motif sequences are selected in the first step. -Then the overlapping parts of overlapping sequences are also selected as new sequences. -The resulting bed-file contains the sequences selected in both steps. The output file has two extra columns appended: 1st, the DNA sequence of the entry, and 2nd, a flag with possible values of '1' or '0' for 'no_overlap' or 'overlap' of the maximum score region of the entity with any known-motif sequence. - -Apart from the experiment data (bed-format) of sequences with possible motifs, another bed-file of the sequences with known motifs and a genome file in fasta format are required. The bed-file with known motif sequences can be calculated with the tool motifscan.py. - -For usage, run ./compareBed.sh - -dependencies: -- R ?version -- bedtools ?version From f742731fe7d00d840c90c83dbeb06a8fee8c9795 Mon Sep 17 00:00:00 2001 From: basti Date: Wed, 5 Dec 2018 13:11:11 +0100 Subject: [PATCH 119/206] Changed ResultPath --- bin/Modules/SaveResults.py | 4 ++-- bin/RegGTFExtractor.py | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/bin/Modules/SaveResults.py b/bin/Modules/SaveResults.py index a15ffc3..60d01e0 100644 --- a/bin/Modules/SaveResults.py +++ b/bin/Modules/SaveResults.py @@ -9,9 +9,9 @@ def __init__(self, results, organism, tissue, wd): print("Save results to File !") self.path = "" if tissue: - self.path = os.path.join(wd+"/"+organism+"_filtered.gtf") + self.path = os.path.join("./"+organism+"_filtered.gtf") else: - self.path = os.path.join(wd+"/"+organism+".gtf") + self.path = os.path.join("./"+organism+".gtf") with open(self.path, "w") as file: write_it = csv.writer(file, delimiter='\t') diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index 0b09b51..bf65106 100644 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -34,9 +34,10 @@ def main_script(org, wd, tissuetype=None): parser.add_argument('--tissue', help='Tissue- or Celltype(s)', action='store', nargs='*', type=str) parser.add_argument('--wd', help='Working directory. default: "."', action='store', default='.', type=str) args = vars(parser.parse_args()) + print("Working Dir: " + args["wd"]) if args["organism"]: print("Working Dir: " + args["wd"]) main_script(args["organism"], args["wd"], args["tissue"]) else: - print("No Arguments found -> See ./RegGTFExtractor.py -h for help.") + print("No Arguments found -> See python3 ./RegGTFExtractor.py -h for help.") From f6942a5ac6430fc1620edd9e8246272536285923 Mon Sep 17 00:00:00 2001 From: basti Date: Wed, 5 Dec 2018 13:53:16 +0100 Subject: [PATCH 120/206] Changed ResultPath --- bin/RegGTFExtractor.py | 29 +++++++++++++++++++++++++++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index bf65106..49303ee 100644 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -6,6 +6,7 @@ from Modules.Uniquifier import UniqueFilter from Modules.SaveResults import ResultSaver import os +import json def check_for_local_folder(wd): @@ -18,14 +19,38 @@ def check_for_local_folder(wd): os.mkdir(os.path.join(wd+"/UCSCData" )) +def check_filter(tissue_cmd, org, wd): + path_to_config = os.path.join(wd + "/config/celltypes_" + org + ".json" ) + tissues_config = [] + if not tissue_cmd: + return False + with open(path_to_config) as input_file: + data = json.loads(input_file.read()) + for x in data: + tissues_config.append(x["type"]) + + if any(tissue in tissues_config for tissue in tissue_cmd): + return True + + else: + return False + + def main_script(org, wd, tissuetype=None): check_for_local_folder(wd) + if check_filter(tissuetype, org, wd): + tissues = tissuetype + print("Filter detected !") + else: + tissues = None + print("Filter not detected !") + ucsc = UcscGtf(org, wd) ense = Ensembl(org, wd) print("Getting Unique Results") - unique_filter = UniqueFilter(ense.get_gtf(), ucsc.get_gtf(), tissuetype) - ResultSaver(unique_filter.get_results(), org, tissuetype, wd) + unique_filter = UniqueFilter(ense.get_gtf(), ucsc.get_gtf(), tissues) + ResultSaver(unique_filter.get_results(), org, tissues, wd) if __name__ == '__main__': From c4b7a0d9d0626a298c6a15d80efdde82934f5bac Mon Sep 17 00:00:00 2001 From: basti Date: Wed, 5 Dec 2018 13:58:30 +0100 Subject: [PATCH 121/206] Changed ResultPath --- bin/Modules/SaveResults.py | 2 +- bin/RegGTFExtractor.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/Modules/SaveResults.py b/bin/Modules/SaveResults.py index 60d01e0..e13aa6a 100644 --- a/bin/Modules/SaveResults.py +++ b/bin/Modules/SaveResults.py @@ -4,7 +4,7 @@ class ResultSaver: - def __init__(self, results, organism, tissue, wd): + def __init__(self, results, organism, tissue): print("Save results to File !") self.path = "" diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index 49303ee..e4657be 100644 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -50,7 +50,7 @@ def main_script(org, wd, tissuetype=None): ense = Ensembl(org, wd) print("Getting Unique Results") unique_filter = UniqueFilter(ense.get_gtf(), ucsc.get_gtf(), tissues) - ResultSaver(unique_filter.get_results(), org, tissues, wd) + ResultSaver(unique_filter.get_results(), org, tissues) if __name__ == '__main__': From a584817a1409eeda3aefb4acb93feb887c09210a Mon Sep 17 00:00:00 2001 From: Schultheis Date: Wed, 5 Dec 2018 15:10:57 +0100 Subject: [PATCH 122/206] added progress messages; thread param; documentation --- bin/cdhit_wrapper.R | 49 +++++++++++++++++++++++++++++++++++---------- 1 file changed, 38 insertions(+), 11 deletions(-) diff --git a/bin/cdhit_wrapper.R b/bin/cdhit_wrapper.R index ed5ea7f..f26a71a 100644 --- a/bin/cdhit_wrapper.R +++ b/bin/cdhit_wrapper.R @@ -2,11 +2,34 @@ library("optparse") option_list <- list( - make_option(opt_str = c("-i", "--input"), default = NULL, help = "Input bed-file. Last column must be sequences.", metavar = "character"), - make_option(opt_str = c("-s", "--similarity"), default = 0.8, help = "Similarity threshold. Default = %default", metavar = "double >= 0.8"), + make_option(opt_str = c("-i", "--input"), default = NULL, help = "Input bed-file. Fourth column is expected to contain names, last column must be sequences.", metavar = "character"), + make_option(opt_str = c("-c", "--identity"), default = 0.8, help = "Identity threshold. Default = %default", metavar = "double >= 0.8"), make_option(opt_str = c("-A", "--coverage"), default = 8, help = "Minimal alignment length for both sequences in nucelotides. Default = %default", metavar = "integer"), - make_option(opt_str = c("-o", "--output"), default = "cluster.bed", help = "Output file. Default = %default", metavar = "character"), - make_option(opt_str = c("-c", "--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical") + make_option(opt_str = c("-o", "--output"), default = "cluster.bed", help = "Output file same as input but with appended column of cluster numbers. Default = %default", metavar = "character"), + make_option(opt_str = c("--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical"), + # make_option(opt_str = c("-G", "--global"), default = FALSE), + # make_option(opt_str = c("-b", "--band_width"), default = 20), + # make_option(opt_str = c("-M", "--memory"), default = 800), + make_option(opt_str = c("-T", "--threads"), default = 1)#, + # make_option(opt_str = c("-n", "--word_length"), default = 3), + # make_option(opt_str = c("-l", "--throw_away_sequences"), default = 5), + # make_option(opt_str = c("-d", "--description")), # can not produce bed if this is != 0 + # make_option(opt_str = c("-s", "--length_dif_cutoff_shorter_p"), default = 0.0), + # make_option(opt_str = c("-S", "--length_dif_cutoff_shorter_n"), default = 999999), + # make_option(opt_str = c("-aL", "--alignment_coverage_longer_p"), default = 0.0), + # make_option(opt_str = c("-AL", "--alignment_coverage_longer_n"), default = 99999999), + # make_option(opt_str = c("-aS", "--alignment_coverage_shorter_p"), default = 0.0), + # make_option(opt_str = c("-AS", "--alignment_coverage_shorter_n"), default = 99999999), + # make_option(opt_str = c("-uL", "--max_unmatched_longer_p"), default = 1.0), + # make_option(opt_str = c("-uS", "--max_unmatched_shorter_p"), default = 99999999), + # make_option(opt_str = c("-U", "--max_unmatched_both_n"), default = 99999999), + # make_option(opt_str = c("-g", "--fast_cluster"), default = FALSE), + # make_option(opt_str = c("-r", "--ignore_strand"), default = TRUE), + # make_option(opt_str = c("--match"), default = 2), + # make_option(opt_str = c("--mismatch"), default = -2), + # make_option(opt_str = c("--gap"), default = -6), + # make_option(opt_str = c("--gap_ext"), default = -1), + # make_option(opt_str = c("-sc", "--sort_cluster_by_size"), default = TRUE) # TODO more args ) @@ -17,16 +40,17 @@ opt <- parse_args(opt_parser) #' cd-hit wrapper #' -#' @param input -#' @param similarity Similarity threshold. +#' @param input Data.table or file in bed format (requires names in fourth column and sequences in last column). +#' @param identity Identity threshold. #' @param coverage Minimal alignment length for both sequences in nucelotides. #' @param output Clustered bedfile. Adds cluster number in last column (lower number = bigger cluster). #' @param clean Clean up after run. +#' @param threads Number of threads to use in cd-hit (0 = all cpus). #' -#' @return bed_table with cluster in last column -#' TODO add all cdhit parameter +#' TODO add all cdhit parameter (necessary ?) #' TODO check whether cdhit is installed -cdhitest <- function(input, similarity = 0.8, coverage = 8, output = "cluster.bed", clean = TRUE) { +cdhitest <- function(input, identity = 0.8, coverage = 8, output = "cluster.bed", clean = TRUE, threads = 1) { + message("Loading bed.") # load bed if neccessary if (!data.table::is.data.table(input)) { bed_table <- data.table::fread(input = input, header = FALSE) @@ -34,18 +58,21 @@ cdhitest <- function(input, similarity = 0.8, coverage = 8, output = "cluster.be bed_table <- input } + message("Convert to fasta.") ### convert bed to fasta # 4th column = name # last column = sequence fasta_file <- "converted_bed.fasta" seqinr::write.fasta(sequences = as.list(bed_table[[ncol(bed_table)]]), names = bed_table[[4]], as.string = TRUE, file.out = fasta_file) + message("Clustering.") ### cd-hit-est cdhit_output <- "cdhit_output" - cdhit_call <- paste("cd-hit-est -i", fasta_file, "-o", cdhit_output, "-c", similarity, "-A", coverage, "-G 0 -n 3 -g 1 -r 0 -l 5 -sc 1 -d 0") + cdhit_call <- paste("cd-hit-est -i", fasta_file, "-o", cdhit_output, "-c", identity, "-A", coverage, "-T ", threads, "-G 0 -n 3 -g 1 -r 0 -l 5 -sc 1 -d 0") system(command = cdhit_call, wait = TRUE) + message("Formatting/ writing results.") # reformat cluster file # columns: id, clstr, clstr_size, length, clstr_rep, clstr_iden, clstr_cov cluster_file <- "reformated.clstr" @@ -71,5 +98,5 @@ cdhitest <- function(input, similarity = 0.8, coverage = 8, output = "cluster.be if (!interactive()) { # remove last parameter (help param) params <- opt[-length(opt)] - do.call(cdhitest, args = params) + do.call(cdhitest, args = params) } From 014e40da396cfe9d49b5aa9707210f3c77150de9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 5 Dec 2018 09:21:50 -0500 Subject: [PATCH 123/206] moved scripts to bin --- bin/compareBed.sh | 117 +++++++++++++++++--- bin/maxScore.R | 7 +- bin/merge.R | 14 +-- compareBed.sh | 268 ---------------------------------------------- maxScore.R | 10 -- merge.R | 23 ---- 6 files changed, 112 insertions(+), 327 deletions(-) delete mode 100644 compareBed.sh delete mode 100644 maxScore.R delete mode 100644 merge.R diff --git a/bin/compareBed.sh b/bin/compareBed.sh index bcf52fb..2153b48 100644 --- a/bin/compareBed.sh +++ b/bin/compareBed.sh @@ -100,19 +100,20 @@ then echo "Required arguments are data and motifs, both in bed-format, and the fasta genome sequences." echo "If a parameter is chosen, a value must be provided or an error will occur." echo "--------------------" - echo "usage: compareBed.sh --data \ --motifs \ --fasta \ \[optional_parameter \\] ..." + echo "usage: compareBed.sh --data --motifs --fasta [optional_parameter ] ..." echo "--------------------" echo " required parameter:" echo " -d --data the path to the .bed file of the footprints" - echo " -m --motifs the path to the .bed file of the scanned motifs" + echo " -m --motifs Either the path to the directory where the .bed files of the scanned motifs are stored" + echo " Or a comma seperated list of files, e.g.: path1/file1,path2/file2,path3/file3" echo " -f --fasta the path to the .fasta file of genome" echo " " echo " optional parameter:" echo " -w --workdir the path to directory where temporary files will be created" echo " default is a new directory that is created in the current directory" - echo " -min --min minimum size of footprints\; default is 10" - echo " -max --max maximum size of footprints\; default is 60" - echo " -o --output output path/file \; default dir is workdir and filename is newFootprints.bed and newFootprints.bed.fasta" + echo " -min --min minimum size of footprints; default is 10" + echo " -max --max maximum size of footprints; default is 80" + echo " -o --output output path/file ; default dir is workdir and filename is newFootprints.bed and newFootprints.bed.fasta" echo " -h --help shows this help message" exit 0 fi @@ -147,7 +148,7 @@ fi if [ $ou == false ] then - output="newFootprints.bed" + output=${workdir}/"newFootprints.bed" ou=true fi @@ -159,25 +160,109 @@ fi if [ $ma == false ] then - max=60 + max=80 ma=true fi + +if [ ! -d $workdir ] +then + mkdir $workdir +fi + #1. first filter. no overlap vs. overlap -bedtools intersect -v -a $data -b $motifs > "$workdir"/pass1Tr.bed -bedtools intersect -wa -a $data -b $motifs > "$workdir"/pass1Fa.bed +echo get sequences with no overlap +cat $data > "$workdir"/pass1Tr.bed +help=true +if [ -d $"motifs" ] +then +for i in "$motifs"/*.bed +do + if [ $help == true ] + then + help=false + bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed + else + help=true + bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed + fi + echo $i +done +else +declare -a motiffiles=(`echo $motifs | sed 's/,/ /g'`) +for i in ${motiffiles[@]} +do + if [ $help == true ] + then + help=false + bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed + else + help=true + bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed + fi + echo $i +done +fi + +if [ $help == false ] +then + cat "$workdir"/pass1TrHelp.bed > "$workdir"/pass1Tr.bed +fi +echo get overlapping sequences +bedtools intersect -v -a $data -b "$workdir"/pass1Tr.bed > "$workdir"/pass1Fa.bed +cat "$workdir"/pass1Fa.bed | wc -l + +echo calc maxScore #2. compute absolut maxscore position -Rscript --vanilla maxScore.R "$workdir"/pass1Fa.bed +Rscript --vanilla /mnt/agnerds/Jannik.Hamp/maxScore.R "$workdir"/pass1Fa.bed + +#3 subtract overlapping regions for additional motifs +echo "also get subsequences with no overlap of overlapping sequences" +help=true + +if [ -d $"motifs" ] +then +for i in "$motifs"/*.bed +do + if [ $help == true ] + then + help=false + bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed + else + help=true + bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed + fi + echo $i +done +else +for i in ${motiffiles[@]} +do + if [ $help == true ] + then + help=false + bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed + else + help=true + bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed + fi + echo $i +done +fi + -#3. subtract overlapping regions for additional motifs -bedtools subtract -a "$workdir"/pass1Fa.bed -b $motifs > "$workdir"/pass2Tr.bed +if [ $help == false ] +then + cat "$workdir"/pass1FaHelp.bed > "$workdir"/pass2Tr.bed +else + cat "$workdir"/pass1Fa.bed > "$workdir"/pass2Tr.bed +fi #4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition -Rscript --vanilla merge.R $min $max "$workdir" +Rscript --vanilla /mnt/agnerds/Jannik.Hamp/merge.R $min $max "$workdir" #5. add fasta sequences to bed and create fasta file -bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$workdir"/"$output" -bedtools getfasta -name -fi $fasta -bed "$workdir"/"$output" -fo "$workdir"/"$output".fasta +bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$output" +bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta #6 clean up -rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed \ No newline at end of file +rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed \ No newline at end of file diff --git a/bin/maxScore.R b/bin/maxScore.R index 4ea545b..1dfed4b 100644 --- a/bin/maxScore.R +++ b/bin/maxScore.R @@ -1,9 +1,10 @@ -#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +#!/bin/Rscript +library(data.table) args = commandArgs(TRUE) file = args[1] -tab = read.table(file, header=FALSE) +tab = fread(file, header=FALSE) colnames(tab) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") tab$maxpos = tab$start + tab$maxpos -write.table(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') +fwrite(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') diff --git a/bin/merge.R b/bin/merge.R index bbe3c9a..f491cb9 100644 --- a/bin/merge.R +++ b/bin/merge.R @@ -1,12 +1,13 @@ -#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +#!/bin/Rscript +library(data.table) args=commandArgs(TRUE) min=as.numeric(args[1]) max=as.numeric(args[2]) folder=args[3] -splitted = read.table(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) -colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") -p1 = read.table(paste(folder, "/pass1Tr.bed", sep=''), header=FALSE) -colnames(p1) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +splitted = fread(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) +colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") +p1 = fread(paste(folder, "/pass1Tr.bed", sep=''), header=TRUE) +colnames(p1) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") p1$maxpos = p1$start + p1$maxpos splitted=rbind(splitted, p1) @@ -19,5 +20,4 @@ splitted$length=splitted$stop - splitted$start splitted=cbind(splitted, containsMaxpos=0) splitted$containsMaxpos[intersect(which(splitted$start <= splitted$maxpos), which(splitted$stop > splitted$maxpos))] = 1 splitted$maxpos = splitted$maxpos - splitted$start -write.table(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') - +fwrite(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') diff --git a/compareBed.sh b/compareBed.sh deleted file mode 100644 index 2153b48..0000000 --- a/compareBed.sh +++ /dev/null @@ -1,268 +0,0 @@ -#!/bin/bash -#data -#motifs -#workdir -#fasta -#min -#max -#output -wrong=() -da=false -mo=false -wo=false -fa=false -mi=false -ma=false -ou=false -he=false - -if [ $# -eq 0 ] -then - he=true -fi - -while [[ $# -gt 0 ]] -do -key="$1" - -case $key in - -d|--data) - data="$2" - da=true - shift - shift - ;; - -m|--motifs) - motifs="$2" - mo=true - shift - shift - ;; - -w|--workdir) - workdir="$2" - wo=true - shift - shift - ;; - -f|--fasta) - fasta="$2" - fa=true - shift - shift - ;; - -min|--min) - min=$2 - mi=true - shift - shift - ;; - -max|--max) - max=$2 - ma=true - shift - shift - ;; - -o|--output) - output="$2" - ou=true - shift - shift - ;; - -h|--help) - help=true - he=true - shift - ;; - *) - wrong+=("$1") - shift - ;; -esac -done - -count=${#wrong[@]} -if [ $count -gt 0 ] -then - for i in ${wrong[@]} - do - echo wrong parameter $i - echo call script without parameters for help or call --help - echo exit - done -exit 1 -fi - -if [ $he == true ] -then - echo "This script utilies bedtools to select new footprints from data." - echo "Therefore the data is compared with known footprint motifs." - echo "The output is a new .bed file with added sequence information." - echo "Required arguments are data and motifs, both in bed-format, and the fasta genome sequences." - echo "If a parameter is chosen, a value must be provided or an error will occur." - echo "--------------------" - echo "usage: compareBed.sh --data --motifs --fasta [optional_parameter ] ..." - echo "--------------------" - echo " required parameter:" - echo " -d --data the path to the .bed file of the footprints" - echo " -m --motifs Either the path to the directory where the .bed files of the scanned motifs are stored" - echo " Or a comma seperated list of files, e.g.: path1/file1,path2/file2,path3/file3" - echo " -f --fasta the path to the .fasta file of genome" - echo " " - echo " optional parameter:" - echo " -w --workdir the path to directory where temporary files will be created" - echo " default is a new directory that is created in the current directory" - echo " -min --min minimum size of footprints; default is 10" - echo " -max --max maximum size of footprints; default is 80" - echo " -o --output output path/file ; default dir is workdir and filename is newFootprints.bed and newFootprints.bed.fasta" - echo " -h --help shows this help message" -exit 0 -fi - -echo selected parameters -echo ------------------- -echo data: $da \(required\) -echo motifs: $mo \(required\) -echo workdir: $wo -echo fasta: $fa \(required\) -echo min: $mi -echo max: $ma -echo output: $ou -echo help: $he - -if [ $da == false ] || [ $mo == false ] || [ $fa == false ] -then - echo required parameters not given. - echo required are: --data \ --motifs \ --fasta \ - exit 1 -fi - -if [ $wo == false ] -then - if [ ! -d workdir1337 ] - then - mkdir workdir1337 - fi - wo=true - workdir="workdir1337" -fi - -if [ $ou == false ] -then - output=${workdir}/"newFootprints.bed" - ou=true -fi - -if [ $mi == false ] -then - min=10 - mi=true -fi - -if [ $ma == false ] -then - max=80 - ma=true -fi - -if [ ! -d $workdir ] -then - mkdir $workdir -fi - -#1. first filter. no overlap vs. overlap -echo get sequences with no overlap -cat $data > "$workdir"/pass1Tr.bed -help=true - -if [ -d $"motifs" ] -then -for i in "$motifs"/*.bed -do - if [ $help == true ] - then - help=false - bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed - else - help=true - bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed - fi - echo $i -done -else -declare -a motiffiles=(`echo $motifs | sed 's/,/ /g'`) -for i in ${motiffiles[@]} -do - if [ $help == true ] - then - help=false - bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed - else - help=true - bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed - fi - echo $i -done -fi - -if [ $help == false ] -then - cat "$workdir"/pass1TrHelp.bed > "$workdir"/pass1Tr.bed -fi -echo get overlapping sequences -bedtools intersect -v -a $data -b "$workdir"/pass1Tr.bed > "$workdir"/pass1Fa.bed -cat "$workdir"/pass1Fa.bed | wc -l - -echo calc maxScore -#2. compute absolut maxscore position -Rscript --vanilla /mnt/agnerds/Jannik.Hamp/maxScore.R "$workdir"/pass1Fa.bed - -#3 subtract overlapping regions for additional motifs -echo "also get subsequences with no overlap of overlapping sequences" -help=true - -if [ -d $"motifs" ] -then -for i in "$motifs"/*.bed -do - if [ $help == true ] - then - help=false - bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed - else - help=true - bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed - fi - echo $i -done -else -for i in ${motiffiles[@]} -do - if [ $help == true ] - then - help=false - bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed - else - help=true - bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed - fi - echo $i -done -fi - - -if [ $help == false ] -then - cat "$workdir"/pass1FaHelp.bed > "$workdir"/pass2Tr.bed -else - cat "$workdir"/pass1Fa.bed > "$workdir"/pass2Tr.bed -fi - -#4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition -Rscript --vanilla /mnt/agnerds/Jannik.Hamp/merge.R $min $max "$workdir" - -#5. add fasta sequences to bed and create fasta file -bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$output" -bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta - -#6 clean up -rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed \ No newline at end of file diff --git a/maxScore.R b/maxScore.R deleted file mode 100644 index 1dfed4b..0000000 --- a/maxScore.R +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/Rscript -library(data.table) -args = commandArgs(TRUE) -file = args[1] - -tab = fread(file, header=FALSE) -colnames(tab) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") -tab$maxpos = tab$start + tab$maxpos - -fwrite(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') diff --git a/merge.R b/merge.R deleted file mode 100644 index f491cb9..0000000 --- a/merge.R +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/Rscript -library(data.table) -args=commandArgs(TRUE) -min=as.numeric(args[1]) -max=as.numeric(args[2]) -folder=args[3] -splitted = fread(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) -colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") -p1 = fread(paste(folder, "/pass1Tr.bed", sep=''), header=TRUE) -colnames(p1) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") -p1$maxpos = p1$start + p1$maxpos - -splitted=rbind(splitted, p1) - -splitted=splitted[which(splitted$stop - splitted$start >= min),] -splitted=splitted[which(splitted$stop - splitted$start <= max),] -splitted$id=make.unique(as.character(splitted$id)) -splitted$length=splitted$stop - splitted$start - -splitted=cbind(splitted, containsMaxpos=0) -splitted$containsMaxpos[intersect(which(splitted$start <= splitted$maxpos), which(splitted$stop > splitted$maxpos))] = 1 -splitted$maxpos = splitted$maxpos - splitted$start -fwrite(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') From 6ff051d13f9ffe82759b96786e16c321001206f3 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Wed, 5 Dec 2018 15:22:24 +0100 Subject: [PATCH 124/206] Delete .gitignore --- .gitignore | 168 ----------------------------------------------------- 1 file changed, 168 deletions(-) delete mode 100644 .gitignore diff --git a/.gitignore b/.gitignore deleted file mode 100644 index bac574a..0000000 --- a/.gitignore +++ /dev/null @@ -1,168 +0,0 @@ -# Created by .ignore support plugin (hsz.mobi) -### Python template -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*$py.class - -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -*.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*.cover -.hypothesis/ -.pytest_cache/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -local_settings.py -db.sqlite3 - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# pyenv -.python-version - -# celery beat schedule file -celerybeat-schedule - -# SageMath parsed files -*.sage.py - -# Environments -.env -.venv -env/ -venv/ -ENV/ -env.bak/ -venv.bak/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ -### JetBrains template -# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm -# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 - -# User-specific stuff -.idea/**/workspace.xml -.idea/**/tasks.xml -.idea/**/usage.statistics.xml -.idea/**/dictionaries -.idea/**/shelf - -# Sensitive or high-churn files -.idea/**/dataSources/ -.idea/**/dataSources.ids -.idea/**/dataSources.local.xml -.idea/**/sqlDataSources.xml -.idea/**/dynamic.xml -.idea/**/uiDesigner.xml -.idea/**/dbnavigator.xml - -# Gradle -.idea/**/gradle.xml -.idea/**/libraries - -# Gradle and Maven with auto-import -# When using Gradle or Maven with auto-import, you should exclude module files, -# since they will be recreated, and may cause churn. Uncomment if using -# auto-import. -# .idea/modules.xml -# .idea/*.iml -# .idea/modules - -# CMake -cmake-build-*/ - -# Mongo Explorer plugin -.idea/**/mongoSettings.xml - -# File-based project format -*.iws - -# IntelliJ -out/ - -# mpeltonen/sbt-idea plugin -.idea_modules/ - -# JIRA plugin -atlassian-ide-plugin.xml - -# Cursive Clojure plugin -.idea/replstate.xml - -# Crashlytics plugin (for Android Studio and IntelliJ) -com_crashlytics_export_strings.xml -crashlytics.properties -crashlytics-build.properties -fabric.properties - -# Editor-based Rest Client -.idea/ - From 02e946ddf46bd6ed92027115117c079c5ea75b20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 5 Dec 2018 09:38:23 -0500 Subject: [PATCH 125/206] added parameter to yaml --- masterenv.yml | 7 +++++++ pipeline.nf | 8 ++++++++ 2 files changed, 15 insertions(+) diff --git a/masterenv.yml b/masterenv.yml index 846cb71..b25f948 100644 --- a/masterenv.yml +++ b/masterenv.yml @@ -21,3 +21,10 @@ dependencies: - r-optparse - bioconductor-iranges # + - snakemake + - meme + - moods + - biopython + - pybedtools + - matplotlib + - seaborn diff --git a/pipeline.nf b/pipeline.nf index 5ed2eac..071771a 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -8,6 +8,13 @@ Channel.fromPath(params.config).set {config} bigwig_input.combine(bed_input).set{footprint_in} +//setting default values +params.input="" +params.bed="" +params.genome_fasta="" +params.jaspar_db="" +params.config="" + process footprint_extraction { conda "${path_env}" @@ -40,6 +47,7 @@ process extract_known_TFBS { script: """ + python ${path_bin}/tfbsscan.py --use moods --core ${params.threads} -m ${db} -g ${fasta} -o ./ """ } From 1cdd1c25eb763062f62df934ca31cb3e49115295 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 5 Dec 2018 09:44:14 -0500 Subject: [PATCH 126/206] added tfbsscan.py to bin --- bin/tfbsscan.py | 755 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 755 insertions(+) create mode 100644 bin/tfbsscan.py diff --git a/bin/tfbsscan.py b/bin/tfbsscan.py new file mode 100644 index 0000000..2bae662 --- /dev/null +++ b/bin/tfbsscan.py @@ -0,0 +1,755 @@ +""" +TFBSscan.py produces the data to be used to join the footprint and motif information across genome + +@author: Anastasiia Petrova +@contact: anastasiia.petrova(at)mpi-bn.mpg.de + +""" + +import argparse +import sys +import os +import re +import time +import multiprocessing +import logging +import subprocess +from Bio import SeqIO +import Bio.SeqIO.FastaIO as bio +import textwrap +import MOODS.scan +import MOODS.tools +import MOODS.parsers + +logger = logging.getLogger('mytool') +logger.setLevel(logging.INFO) + +formatter = logging.Formatter("%(asctime)s : %(message)s", "%Y-%m-%d %H:%M") + +fh = logging.FileHandler('final_log.txt') +fh.setLevel(logging.INFO) +fh.setFormatter(formatter) +logger.addHandler(fh) + +ch = logging.StreamHandler() +ch.setLevel(logging.INFO) +ch.setFormatter(formatter) +logger.addHandler(ch) + +#catch all the information about input and output files as well as information on the used tool (fimo or moods) +def parse_args(): + parser = argparse.ArgumentParser(prog = 'mytool_ver6', description = textwrap.dedent(''' + + This script takes a list of motifs loaded from jaspar.genereg.net as a combined text file in MEME or .PFM format, a genome file in FASTA format and optionaly a .bed file (the one you want to be merged with the whole genome file) as input. If you want to merge a .bed file with the whole genome file, please enter --bed_file or -b bevor your .bed file. The tool will provide a file output_merge.fa, which you can also use for your research later on. If you already have a merged file, please give this one as genome file input. If there are several motifs in the input file, the tool will create a separate output file for each motif. Choose if you want to use fimo or moods with --use, this script uses by default fimo. Please note that the tool can not provide the calculation of q values with fimo due to the text mode that fimo needs to use. The tool sends merged genome file and motifs to fimo or moods, saves the sorted output for each of the given motifs as moods/fimo_output_[alternate name and id of the motif].txt in the output directory, then calculates the start and the end as real positions on the chromosom and writes this information in the ouput files. The columns in the output file are: chromosom, start, end, the name and score of TF. If a .bed file was given as input, the tool will also add the additional columns from it to the output. If the output file is empty, there were no machtes within given genome regions. Please note, if you want to have all intermediate output files, enter --clean nothing + + '''), epilog='That is what you need to make this script work for you. Enjoy it') + + required_arguments = parser.add_argument_group('required arguments') + + required_arguments.add_argument('-m', '--motifs', help='file in MEME format with mofits loaded from jaspar.genereg.net') + required_arguments.add_argument('-g', '--genome', help='a whole genome file or regions of interest in FASTA format to be scanned with motifs') + + #all other arguments are optional + parser.add_argument('-o', '--output_directory', default='output', const='output', nargs='?', help='output directory, default ./output/') + parser.add_argument('-b', '--bed_file', nargs='?', help='a .bed file to be merged with the whole genome file to find regions of interest') + parser.add_argument('--use', '--use_tool', default='fimo', const='fimo', nargs='?', choices=['fimo', 'moods'], help='choose the tool to work with, default tool is fimo') + parser.add_argument('--clean', nargs='*', choices=['nothing', 'all', 'cut_motifs', 'fimo_output', 'merge_output', 'moods_output'], dest='cleans', help='choose the files you want to delete from the output directory, the default is deleting all the temporary files from the directory') + parser.add_argument('--fimo', help='enter additional options for fimo using = inside "", for example fimo="--norc" to not score the reverse complement DNA strand. By default the --text mode is used and the calculation of the q values due to the --text mode is not possible') + parser.add_argument('--cores', type=int, help='number of cores allowed to use by this tool, by default the tool uses 2 cores', default=2) + parser.add_argument('-p', '--p_value', type=float, help='enter the p value, the default p value is 0.0001. Please note that if you enter the p value using --fimo="--thresh ..." as well, the one within --fimo call will be used', default=0.0001) + parser.add_argument('--resolve_overlaps', action='store_true', help='delete overlaps with greater p value, by default no overlaps are deleted') + parser.add_argument('--hide_info', action='store_true', help='while working with data write the information only into ./log.txt') + parser.add_argument('--moods_bg', nargs='+', type=float, help='set the bg for moods, by default moods uses the bg is 0.25 0.25 0.25 0.25') + + args = parser.parse_args() + return args + +def check_directory(directory): + if not os.path.exists(directory): + os.makedirs(directory) + logger.info('a new directory ' + directory + ' was created') + +#merge the whole genome with the regions mentioned in .bed file +def merge(genome, bed_file, output_directory): + logger.info('the merging of files ' + genome + ' and ' + bed_file + ' will end soon, the result file is output_merge.fa') + output_merge = os.path.join(output_directory, "output_merge.fa") + os.system("bedtools getfasta -fi " + genome + " -bed " + bed_file + " -fo " + output_merge) + return output_merge + +#split the motifs each in other file +def split_motifs(motifs, output_directory, usage): + logger.info("the file with motifs " + motifs + " will be checked for motifs and if needed splitted in files each containing only one motif") + + first_line = subprocess.getoutput("head -1 " + motifs) #find the first line of the input file + + if usage == "moods": + if first_line.startswith(">"): + #the motif file probably has the .pfm format, try to read and split it + splitted_motifs = read_pfm(motifs, output_directory) + else: #maybe the file with motifs is in MEME format, so try to convert it + logger.info("the input file has not the expected format, I will try to convert it to .pfm format") + splitted_motifs = convert_meme_to_pfm(motifs, output_directory) + + elif usage == "fimo": + if first_line.startswith("MEME version"): + #the motifs file has probably the MEME format, try to read and split it + splitted_motifs = read_meme(motifs, output_directory) + + #if the there was a convertion before, delete all the .pfm files as we don't need them + for filename in os.listdir(output_directory): + if filename.endswith(".pfm"): + remove_file(os.path.join(output_directory, filename)) + + else: #maybe the file with motifs is in .pfm format, so try to convert is + logger.info("the input file has not the expected format, I will try to convert it to MEME format") + splitted_motifs = convert_pfm_to_meme(motifs, output_directory) + + return splitted_motifs + +def read_pfm(motifs, output_directory): + splitted_motifs = [] #to save the names of files after splitting + motif = [] #to save the motif itself, which will be written to the file + + with open(motifs) as read_file: + lines = 0 + for line in read_file: + #as the motif has first line with the name and 4 lines with information, if the 5th line is something else than the name of the next motif, the exit will be forced + if lines == 5 and not line.startswith(">"): + logger.info('please make sure that the file with motifs has a right format and the number of lines is right in the motif file') + sys.exit() + else: + if line.startswith(">"): + if 'written_file' in locals(): + written_file.write(''.join(motif)) + motif = [] + lines = 0 + written_file.close() + + motif_alternate_name = check_name(re.split(' ', line)[1].rstrip()) + motif_id = re.split(' ', line[1:])[0] #[1:] meands do not use the first character + motif_name = os.path.join(output_directory, motif_alternate_name + '_' + motif_id + '.pfm') + + splitted_motifs.append(motif_name) + written_file = open(motif_name, 'w') + + if lines >= 1 and lines <= 4: #one motif has 5 lines, the first consists the name, the next 4 - the information we need to proceed the data within moods + motif.append(line) + + lines = lines + 1 + written_file.write(''.join(motif)) + written_file.close() + + return splitted_motifs + +def read_meme(motifs, output_directory): + splitted_motifs = [] #to save the names of files after splitting + motif = [] #to save the motif itself, which will be written to the file + head = [] #define a list for header, as fimo needs a header in each motif file it proceedes + + with open(motifs) as read_file: + lines = 0 + for line in read_file: + #make the head part + if lines <= 8: + if lines == 0 and not line.startswith("MEME version"): + logger.info('please make sure that the file with motifs has a right format and the number of lines is right in the motif file') + sys.exit() + + head.append(line) + else: + #search for motifs and save each to another file + if line.startswith("MOTIF"): + if 'written_file' in locals(): + written_file.write(''.join(motif)) + motif = [] + written_file.close() + + #the alternate name will be checked for validity and the invalid chars will be replaced with '_' + if len(re.split(' ', line.rstrip())) == 3: #in the input motif file the motif id and the alternate name are splitted using the tab, otherwise they are splitted using _, but we do not want to change it if so + motif_alternate_name = check_name(re.split(' ', line)[2].rstrip()) + motif_id = re.split(' ', line)[1] + motif_name = os.path.join(output_directory, motif_alternate_name + '_' + motif_id + '.meme') + else: + motif_alternate_name = check_name(re.split(' ', line)[1].rstrip()) + motif_name = os.path.join(output_directory, motif_alternate_name + '.meme') + + #make a list with all the motif names to know which files to iterate when fimo is called + splitted_motifs.append(motif_name) + + written_file = open(motif_name, 'w') + written_file.write(''.join(head)) + + motif.append(line) + + lines = lines + 1 + + #write the last motif + written_file.write(''.join(motif)) + written_file.close() + + read_file.close() + + return splitted_motifs + +def convert_meme_to_pfm(motifs, output_directory): + #i can only convert the file to pfm if the motifs file is in MEME format + + splitted_motifs = [] #to save the names of files after splitting + rows = [[] for row in range(4)] + + with open(motifs) as read_file: + lines = 0 + for line in read_file: + if lines == 0 and not line.startswith("MEME version"): + logger.info('please make sure that the file with motifs has a right format and the number of lines is right in the motif file') + sys.exit() + else: + #search for motifs and save each to another file + if line.startswith("MOTIF"): + + if 'written_file' in locals(): + for row in rows: + written_file.write('\t'.join(row) + '\n') + + rows = [[] for row in range(4)] + + written_file.close() + + #the alternate name will be checked for validity and the invalid chars will be replaced with '_' + if len(re.split(' ', line.rstrip())) == 3: #in the input motif file the motif id and the alternate name are splitted using the tab, otherwise they are splitted using _, but we do not want to change it if so + motif_alternate_name = check_name(re.split(' ', line)[2].rstrip()) + motif_id = re.split(' ', line)[1] + motif_name = os.path.join(output_directory, motif_alternate_name + '_' + motif_id + '.pfm') + + else: + motif_alternate_name = check_name(re.split(' ', line)[1].rstrip()) + motif_name = os.path.join(output_directory, motif_alternate_name + '.pfm') + + #make a list with all the motif names to know which files to iterate when fimo is called + splitted_motifs.append(motif_name) + + written_file = open(motif_name, 'w') + + elif line.startswith("letter-probability matrix"): + columns = int(re.split(' ', re.split('w= ', line)[1])[0]) #find the number of columns from the line out of the motifs file + nsites = int(re.split(' ', re.split('nsites= ', line)[1])[0]) #find the nsites to count the frequency count for .pfm file + + elif line.startswith(' '): #each line with information about frequency starts in MEME format with ' ' + for i in range(len(rows)): + rows[i].append(str(round(float(re.findall(r'\S+', line)[i])*nsites))) #split the line, do not mention how much whitespaces are in between, multiply it with nsites and save it to the corresponding row + + lines = lines + 1 + + #write the last motif + for row in rows: + written_file.write('\t'.join(row) + '\n') + + written_file.close() + read_file.close() + + return splitted_motifs + +def convert_pfm_to_meme(motifs, output_directory): + #i can only convert the file to meme, if motifs file is in .pfm format + + #first we need to split the pfm motifs as the jaspar2meme does not work with the files containing several motifs, but with the directory consisting files each with only one motif in pfm format + pfm_motifs = read_pfm(motifs, output_directory) + + converted_name = os.path.join(output_directory, "converted_motifs.meme") + + os.system("jaspar2meme -pfm " + output_directory + " > " + converted_name) + + #need to call split motifs for meme file + splitted_motifs = split_motifs(converted_name, output_directory, "fimo") + + remove_file(converted_name) + return splitted_motifs + +#if there are chars that are not allowed, they will be replaced with '_', to the possibly invalid names there will be added '_' at the beginning of the name +def check_name(name_to_test): + badchars= re.compile(r'[^A-Za-z0-9_. ]+|^\.|\.$|^ | $|^$') + badnames= re.compile(r'(aux|com[1-9]|con|lpt[1-9]|prn)(\.|$)') + + #replace all the chars that are not allowed with '_' + name = badchars.sub('_', name_to_test) + + #check for the reserved by the os names + if badnames.match(name): + name = '_' + name + return name + +#use fimo to make a file +def call_fimo(fimo_data, p_value, one_motif, genome, output_directory): + + #make the filename for the fimo output + fimo_output_file = os.path.join(output_directory, "fimo_output_" + os.path.splitext(os.path.basename(one_motif))[0] + ".txt") + fimo_output_unsorted = os.path.join(output_directory, "fimo_output_unsorted_" + os.path.splitext(os.path.basename(one_motif))[0] + ".txt") + + #check if user needs special options for the fimo + if fimo_data != None: + fimo_data = fimo_data + " --thresh " + str(p_value) + " " + else: + fimo_data = "--thresh " + str(p_value) + " " #add the passed p value to the fimo options + + #call fimo for this motif and save the output to a temporary file + send_to_fimo = "fimo --text --no-qvalue " + fimo_data + one_motif + " " + genome + " > " + fimo_output_unsorted + + logger.info('fimo proceed the data using this call ' + send_to_fimo) + + fimo_stdout = subprocess.getoutput(send_to_fimo) + + #the normal output from fimo starts with Using motif ..., so print it from the logger, otherwise print what else fimo says + if fimo_stdout.startswith("Using") and re.split('\n', fimo_stdout)[1]: + logger.info('info from fimo: ' + re.split('\n', fimo_stdout)[0].rstrip()) + logger.info('info from fimo: ' + re.split('\n', fimo_stdout)[1].rstrip()) + else: #there were some problems with fimo, so we want to see what they were + logger.info('info from fimo: ' + fimo_stdout) + + + if not os.path.isfile(fimo_output_unsorted): + logger.info('the usage of fimo was crashed, there is no required output file, the exit is forced') + sys.exit() + + if os.stat(fimo_output_unsorted).st_size == 0: #if the output of fimo is empty + fimo_output_unsorted = fimo_output_unsorted.replace('unsorted_', '') + return fimo_output_unsorted + else: + #if the file was converted from pfm, the second column contains the positions, so we want to sort using this column, and not the next one + second_line = subprocess.getoutput("sed -n '2{p;q}' " + fimo_output_unsorted) + if re.split('\t', second_line)[2].startswith("chr"): #the re.split[1] is a ' ', so take the [2] + os.system("cat " + fimo_output_unsorted + " | sort -k 2 -V > " + fimo_output_file) + else: + #we are sorting after the third column, which looks like chr1:123-126, -V means it will sort the digitals and not the strings + os.system("cat " + fimo_output_unsorted + " | sort -k 3 -V > " + fimo_output_file) + + #make sure the output of fimo exists + if not os.path.isfile(fimo_output_file): + logger.info('the sorting of the output file from the fimo was crashed, the exit is forced') + sys.exit() + else: + return fimo_output_file + +def call_moods(one_motif, genome, output_directory, p_value, moods_bg): + + # setting standard parameters for moods + pseudocount = 0.0001 + + if moods_bg == None: + bg = MOODS.tools.flat_bg(4) + else: + bg = tuple(moods_bg) + + logger.info("moods will work with the p_value " + str(p_value) + " and the bg " + str(bg)) + + motif_name = os.path.basename(one_motif) + + moods_output_unsorted_name = os.path.join(output_directory, "moods_output_unsorted_" + os.path.splitext(motif_name)[0] + ".txt") + moods_output_file_unsorted = open(moods_output_unsorted_name, 'w') + + moods_output_name = os.path.join(output_directory, "moods_output_" + os.path.splitext(motif_name)[0] + ".txt") + moods_output_file = open(moods_output_name, 'w') + + matrix_names = [os.path.basename(one_motif)] + + matrices = [] + matrices_rc = [] + + valid, matrix = pfm_to_log_odds(one_motif, bg, pseudocount) + + key_for_bed_dict = '' + + if valid: + + logger.info("please be patient, moods is working on the data") + + matrices.append(matrix) + matrices_rc.append(MOODS.tools.reverse_complement(matrix,4)) + matrices_all = matrices + matrices_rc + thresholds = [MOODS.tools.threshold_from_p(m, bg, p_value, 4) for m in matrices_all] + + scanner = MOODS.scan.Scanner(7) + scanner.set_motifs(matrices_all, bg, thresholds) + + with open(genome) as handle: + + seq_iterator = bio.SimpleFastaParser(handle) + + for header, seq in seq_iterator: + + header_splitted = re.split(r':', header) + + if len(header_splitted) == 1: #if there are no positions given + header = header + ":0-" #set the first position as 0 and split it once more + header_splitted = re.split(r':', header) + logger.info("moods works with " + header) + else: #the given genome file is a file with peaks, so use the header of the peak as a key to search in the bed dictionary for additional information later on + key_for_bed_dict = header + + chromosom = header_splitted[0] + positions = re.split(r'-', header_splitted[-1]) + + results = scanner.scan(seq) + + fr = results[:len(matrix_names)] #forward strand + rr = results[len(matrix_names):] #reverse strand + + results = [[(r.pos, r.score, '+', ()) for r in fr[i]] + + [(r.pos, r.score, '-', ()) for r in rr[i]] for i in range(len(matrix_names))] #use + and - to indicate strand + + for (matrix, matrix_name, result) in zip(matrices, matrix_names, results): + + motif_id = re.split(r'_', matrix_name)[-1] #find the id of the given morif + motif_alternate_name = matrix_name.replace(motif_id, '')[:-1] #the alternate name of the motif is the name of the file without id and with cutted last character, that is _ + + if len(matrix) == 4: + l = len(matrix[0]) + if len(matrix) == 16: + l = len(matrix[0] + 1) + for r in sorted(result, key=lambda r: r[0]): + strand = r[2] + pos = r[0] + hitseq = seq[pos:pos+l] #sequence + #score = r[1] + score = format(r[1], '.15f') #round to 15 digits after floating point, already type str + + if key_for_bed_dict != '': + start = pos + 1 + end = pos + len(hitseq) + chromosom = key_for_bed_dict #instead of only the name of chromosom write the key to search in the bed_file + else: + start = int(positions[0]) + pos + 1 + end = start + len(hitseq) - 1 + + #moods_output_file_unsorted.write('\t'.join([motif_id, motif_alternate_name, chromosom, str(start), str(end), strand, str(score)]) + '\n') + moods_output_file_unsorted.write('\t'.join([motif_id, motif_alternate_name, chromosom, str(start), str(end), strand, score]) + '\n') + + #now sort the output of moods + os.system("cat " + moods_output_unsorted_name + " | sort -k 1 -V > " + moods_output_name) + + moods_output_file_unsorted.close() + moods_output_file.close() + + return moods_output_name + + else: + logger.info("The input for moods was not validated by the MOODS.parsers.pfm. Please check if it has the right format (note that the MOODS accepts only the old version of .pfm files, that is one without the header containing the name and id of the motif)") + sys.exit() + +#help function for the moods call, convert pfm to log odds +def pfm_to_log_odds(filename, bg, pseudocount): + if pfm(filename): + mat = MOODS.parsers.pfm_to_log_odds(filename, bg, pseudocount) + if len(mat) != 4: #if something went wrong, the empty list will be returned + return False, mat + else: + return True, mat + else: + logger.info('please make sure the motif file has a .pfm format needed for moods') + sys.exit() + +#help function for the moods call, check if the file is in a pfm format using moods +def pfm(filename): + mat = MOODS.parsers.pfm(filename) + if len(mat) != 4: + return False + else: + return True + +# calculate the real positions of TFs, if needed, resolve the overlaps, and write to the output file +def write_output_file(input_file, bed_dictionary, resolve_overlaps): + + if os.path.basename(input_file).startswith("moods"): + name_without_moods_or_fimo = input_file.replace('moods_output_', '') + used_tool = "moods" + else: + name_without_moods_or_fimo = input_file.replace('fimo_output_', '') + used_tool = "fimo" + + output_file_name = os.path.splitext(name_without_moods_or_fimo)[0] + ".bed" + + logger.info('writing the output file ' + output_file_name) + output_file = open(output_file_name, 'w') + + #calculate the real positions of TFs and write the information in the output file + with open(input_file) as read_file: + + overlap = [] + printed_line = [] + last_line = [] + key_for_bed_dict = '' + + for line in read_file: + if not line.startswith('#'): + + line_to_write = [] + + line_array = re.split(r'\t', line.rstrip('\n')) + + chromosom_and_positions = re.split(r':', line_array[2]) + if len(chromosom_and_positions) == 1: #the whole genome was given, there is nothing to split + chromosom = line_array[2] + start = line_array[3] + end = line_array[4] + else: + positions = re.split(r'-', chromosom_and_positions[-1]) + chromosom = chromosom_and_positions[0] + start = str(int(positions[0]) + int(line_array[3])) + end = str(int(positions[0]) + int(line_array[4])) + key_for_bed_dict = line_array[2] #use only if there is a bed_dictionary in input + + #------- these are 5 needed columns to succesfully proceed the data + + name = os.path.splitext(os.path.basename(name_without_moods_or_fimo))[0] + + score = line_array[6] + + line_to_write.extend([chromosom, start, end, name, score]) + #------ here the additional information coule be added to the output file + + strand_inf = line_array[5] + line_to_write.append(strand_inf) + + if used_tool == "fimo": + p_value = line_array[7] + line_to_write.append(p_value) + + #if the dictionary is not empty check for the information corresponding to these positions + if bed_dictionary and key_for_bed_dict in bed_dictionary: + line_to_write.append('\t'.join(bed_dictionary[key_for_bed_dict])) + + line_to_write.insert(0, "write") #insert a flag to know if the line should be written or not + + last_line = line_to_write #save the line in case it is the last line and if due to the check_overlap it could not be printed + + if resolve_overlaps: + overlap, line_to_write, printed_line = check_overlap(line_to_write, overlap, printed_line, output_file) + + write_line_not_overlap(output_file, line_to_write) + + if not last_line[0].startswith('write'): #it could be that the write flag was deleted from the last_line so append it back + overlap.insert(0, "write") + + #if there is already any printed line, check if the saved last line was already printed. Otherwise print it + if resolve_overlaps: + if printed_line: + if last_line[1] != printed_line[1] or last_line[2] != printed_line[2]: + write_line_not_overlap(output_file, last_line) + + output_file.close() + +def write_line_not_overlap(output_file, line_to_write): + if line_to_write: #if line_to_write is not empty + if line_to_write[0].startswith('write'): #if the line does not contain an overlap, it contains the flag "write" at the first position + line_to_write.pop(0) #delete the flag + output_file.write('\t'.join(line_to_write) + '\n') + +def check_overlap(line_to_write, overlap, printed_line, output_file): + + is_overlap = None + + if not overlap: #if the overlap list is empty + is_overlap = False + + else: #if the overlap list is not empty + + if not overlap[0].startswith('write'): #it could be that the write flag was deleted from the overlap so append it back to make sure the next if clauses run right + overlap.insert(0, "write") + + if line_to_write[1] == overlap[1] and float(line_to_write[2]) < float(overlap[3]): #the current line could overlap the previous because the start of the current line is smaller than the end of the previous one and they are both on the one chromosom + #if p value in the current line is smaller than p value in the previous line (or score is bigger), save the current line as possible overlap for future + if float(line_to_write[5]) > float(overlap[5]): + is_overlap = False + else: + #if the p value in the current line is greater than p value in the previous line or are these both p values the same, the current line will not be printed, but also it will not be saved + line_to_write.pop(0) + is_overlap = None + else: #it is an other chromosom or the start at the current line is greater or the same as the end of the previous one + if printed_line != overlap: + is_overlap = True + else: + is_overlap = False + + if is_overlap == False: + overlap = line_to_write #save the current line + line_to_write.pop(0) #do not print anything due to deleting the flag ("write") + elif is_overlap == True: + if not overlap[0].startswith('write'): + overlap.insert(0, "write") + printed_line = overlap #the previous line is saved as temporary line to print it later on + overlap = line_to_write #save the current line + line_to_write = printed_line #print the temporary saved line + + return overlap, line_to_write, printed_line + +def remove_file(file): + if os.path.isfile(file): + os.remove(file) + +def clean_directory(cleans, output_directory, motif, tool_output_file): + + fimo_output_unsorted = os.path.join(tool_output_file.replace("fimo_output", "fimo_output_unsorted")) + moods_output_unsorted = os.path.join(tool_output_file.replace("moods_output", "moods_output_unsorted")) + + for clean in cleans: + if clean == 'all': + remove_file(motif) + remove_file(tool_output_file) + remove_file(fimo_output_unsorted) + remove_file(moods_output_unsorted) + elif clean == 'fimo_output': + if os.path.basename(tool_output_file).startswith("fimo"): + remove_file(tool_output_file) + remove_file(fimo_output_unsorted) + elif clean == 'cut_motifs': + remove_file(motif) + elif clean == 'moods_output': + if os.path.basename(tool_output_file).startswith("moods"): + remove_file(tool_output_file) + remove_file(fimo_output_unsorted) + +def tool_make_output(usage, motif, genome, output_directory, cleans, p_value, bed_dictionary, fimo_data, resolve_overlaps, moods_bg): + try: + if usage == "fimo": + tool_output_file = call_fimo(fimo_data, p_value, motif, genome, output_directory) + elif usage == "moods": + tool_output_file = call_moods(motif, genome, output_directory, p_value, moods_bg) + + output = write_output_file(tool_output_file, bed_dictionary, resolve_overlaps) + finally: + clean_directory(cleans, output_directory, motif, tool_output_file) + +def multiprocess(motifs, genome, output_directory, cleans, fimo_data, p_value, bed_dictionary, cpu_count, resolve_overlaps, usage, moods_bg): + + if cleans == None: + cleans = ['all'] + + pool = multiprocessing.Pool(cpu_count) #by default is cpu_count 2 + + length = len(motifs) #the number of the motifs to find the percentage of the job that was done + step = 100/length #the percentage that should be added after the job with each single motif is done + + tasks = [] #here the jobs done by processes are saved + + for motif in motifs: + tasks.append(pool.apply_async(tool_make_output, args = (usage, motif, genome, output_directory, cleans, p_value, bed_dictionary, fimo_data, resolve_overlaps, moods_bg, ))) + + tasks_done = sum([task.ready() for task in tasks]) #the number of the processes that ended their job + + #check the number of the processes that are ready till the number of them reaches the number of processes started in the pool + while tasks_done < len(tasks): + #if the number of ready processes has changed, save the new number and print the percentage of the job done + if sum([task.ready() for task in tasks]) != tasks_done: + tasks_done = sum([task.ready() for task in tasks]) + sys.stdout.write("%-100s| %d%% \r" % (''*tasks_done, step*tasks_done)) + sys.stdout.flush() + sys.stdout.write("\n") + #update the number of ready processes each 0.05 seconds + time.sleep(0.05) + + pool.close() + pool.join() #make sure all the processes are done and exit + + #the processes should not delete the merged genome file + #so make sure if this file is needed, otherwise delete it + for clean in cleans: + if clean == 'all' or clean == 'merge_output': + for filename in os.listdir(output_directory): + if filename == "output_merge.fa": + remove_file(genome) + + if clean != 'nothing': + logger.info('the directory ' + output_directory + ' was cleaned, only the required files were left') + +def make_bed_dictionary(bed_file): + + bed_dictionary = {} + + with open(bed_file) as read_bed_file: + for bed_line in read_bed_file: + bed_line_array = re.split(r'\t', bed_line.rstrip('\n')) + if bed_line_array[1].isdigit() and bed_line_array[2].isdigit() and int(bed_line_array[1]) <= int(bed_line_array[2]): #in the real bedfile the second column is a start position, and the third column is an end position, so we are checking if these are integers and if the start position is smaller than the end one + key = bed_line_array[0] + ":" + bed_line_array[1] + "-" + bed_line_array[2] + value = [] + for i in range(3, len(bed_line_array)): + value.append(bed_line_array[i]) + + bed_dictionary[key] = value + else: #this is not a bed file, force exit + logger.info('please make sure the input bed file has a right format, the problem occured on the line ' + bed_line) + sys.exit() + + read_bed_file.close() + + return bed_dictionary + +def is_fasta(check_fasta): + if not os.path.isfile(check_fasta): + logger.info('there is no file with genome, the exit is forced') + sys.exit() + else: + # modified code from https://stackoverflow.com/questions/44293407/how-can-i-check-whether-a-given-file-is-fasta + + with open(check_fasta, "r") as handle: + fasta = SeqIO.parse(handle, "fasta") + return any(fasta) # False when `fasta` is empty, i.e. wasn't a FASTA file + +def check_existing_input_files(args): + if not args.motifs or not args.genome: + logger.info('there is no satisfied input, please enter --help or -h to learn how to use this tool') + sys.exit() + elif not is_fasta(args.genome): + logger.info('please make sure the input genome file has a fasta format') + sys.exit() + #check if the file with motifs exists + elif not os.path.isfile(args.motifs): + logger.info('there is no file with motifs, the exit is forced') + sys.exit() + #if the bedfile was given as input, check if this file exists + elif args.bed_file: + if not os.path.isfile(args.bed_file): + logger.info('there is no such bed file ' + args.bed_file + ', the exit is forced') + sys.exit() + +def check_fimo_version(): + fimo_version = subprocess.getoutput("fimo --version") #works only on python 3.4 + #fimo_version = int(fimo_version.replace('.', '')) #replace the . in the version to be able to compare it as int + if fimo_version < "4.12.0": + logger.info('please make sure you are using fimo version 4.12.0 or the newer one') + sys.exit() + +def main(): + + + args = parse_args() + + if args.use == "fimo": + check_fimo_version() + + #if user do not want to see the information about the status of jobs, remove the handler, that writes to the terminal + if args.hide_info: + #logger.disabled = True + logger.removeHandler(ch) + + check_existing_input_files(args) + + #check if there is an existing directory that user gave as input, otherwise create this directory from the path provided from the user + check_directory(args.output_directory) + + splitted_motifs = split_motifs(args.motifs, args.output_directory, args.use) + + #check if there is a .bed file to merge the genome file with. If so, merge them + if args.bed_file: + bed_dictionary = make_bed_dictionary(args.bed_file) + args.genome = merge(args.genome, args.bed_file, args.output_directory) + else: + bed_dictionary = {} + + #if the usage is moods, call moods, otherwise call fimo + multiprocess(splitted_motifs, args.genome, args.output_directory, args.cleans, args.fimo, args.p_value, bed_dictionary, args.cores, args.resolve_overlaps, args.use, args.moods_bg) + + for handler in logger.handlers: + handler.close() + logger.removeFilter(handler) + +if __name__ == "__main__": + main() \ No newline at end of file From b3fabce937f2206dbebbdd12f2a72226bac31e4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 5 Dec 2018 10:25:49 -0500 Subject: [PATCH 127/206] added and moved parameter in config --- config/cluster.config | 1 - config/motif_estimation.config | 7 ++++--- nextflow.config | 13 +++++++------ 3 files changed, 11 insertions(+), 10 deletions(-) diff --git a/config/cluster.config b/config/cluster.config index 3dce063..0a21a05 100644 --- a/config/cluster.config +++ b/config/cluster.config @@ -3,5 +3,4 @@ params{ kmer=10 aprox_motif_len=10 - threads=1 } diff --git a/config/motif_estimation.config b/config/motif_estimation.config index a00fc86..d280b3e 100644 --- a/config/motif_estimation.config +++ b/config/motif_estimation.config @@ -1,11 +1,12 @@ params { //bed_to_clustered_fasta min_seq = 10 - + //glam2 - motif_min_len = 10 + motif_min_len = 8 motif_max_len = 20 + interation = 10000 //tomtom tomtom_treshold = 0.01 -} \ No newline at end of file +} diff --git a/nextflow.config b/nextflow.config index 2e84338..c0a683b 100644 --- a/nextflow.config +++ b/nextflow.config @@ -1,12 +1,13 @@ createTimeout = 60 - -env { - path_bin = $workflow.projectDir/bin - path_env = $workflow.projectDir/masterenv.yml -} +params.threads=1 //Parameter for for scripts! Not for nextflow processes. includeConfig '$workflow.projectDir/config/peak_calling.config' -includeConfig '$workflow.projectDir/config/1.2.config' +includeConfig '$workflow.projectDir/config/filter_unknown_motifs.config' includeConfig '$workflow.projectDir/config/cluster.config' includeConfig '$workflow.projectDir/config/motif_estimation.config' includeConfig '$workflow.projectDir/config/create_gtf.config' + +env { + path_bin = $workflow.projectDir/bin + path_env = $workflow.projectDir/masterenv.yml +} From 760d91d2126ca2127f2e1a7a9c077d905d37cf48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 5 Dec 2018 10:26:29 -0500 Subject: [PATCH 128/206] added default parameter in script --- pipeline.nf | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/pipeline.nf b/pipeline.nf index 071771a..194bf38 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -15,6 +15,38 @@ params.genome_fasta="" params.jaspar_db="" params.config="" +//peak_calling + params.window_length = 200 + params.step = 100 + params.percentage = 0 + +//filter_unknown_motifs + params.min_size_fp=10 + params.max_size_fp=100 + +//clustering + params.sequence_coverage=8 + + params.kmer=10 + params.aprox_motif_len=10 + +//motif_estimation + //bed_to_clustered_fasta + params.min_seq = 10 // Minimum number of sequences in the fasta-files for glam2 + + //glam2 + params.motif_min_len = 8 // Minimum length of Motifs + params.motif_max_len = 20 // Maximum length of Motifs + params.interation = 10000 // Number of Iterations done by glam2. A high iteration number equals higher more accurate but higher runtime. + + //tomtom + params.tomtom_treshold = 0.01 // threshold for similarity score. + +//creating_gtf + params.organism="homo_sapiens" + params.tissue="" + + process footprint_extraction { conda "${path_env}" @@ -143,7 +175,7 @@ process glam2 { script: """ - glam2 n ${fasta} -O . -a ${params.motif_min_len} -b ${params.motif_max_len} -z 5 + glam2 n ${fasta} -O . -a ${params.motif_min_len} -b ${params.motif_max_len} -z 5 -n ${params.interation} """ } From ef3343846e651c7e69b4c094ca131a1661a056e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 5 Dec 2018 10:29:45 -0500 Subject: [PATCH 129/206] moved uropa.config to config dir --- uropa.config => config/uropa.config | 0 nextflow.config | 1 + 2 files changed, 1 insertion(+) rename uropa.config => config/uropa.config (100%) diff --git a/uropa.config b/config/uropa.config similarity index 100% rename from uropa.config rename to config/uropa.config diff --git a/nextflow.config b/nextflow.config index c0a683b..a3c06eb 100644 --- a/nextflow.config +++ b/nextflow.config @@ -1,5 +1,6 @@ createTimeout = 60 params.threads=1 //Parameter for for scripts! Not for nextflow processes. +params.config="${workflow.projectDir}/config/uropa.config" includeConfig '$workflow.projectDir/config/peak_calling.config' includeConfig '$workflow.projectDir/config/filter_unknown_motifs.config' From 4ff3088b0c5e39b8523cde20e92d2ef5e2fc1e0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 5 Dec 2018 10:53:43 -0500 Subject: [PATCH 130/206] added help message --- pipeline.nf | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pipeline.nf b/pipeline.nf index 194bf38..3610955 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -47,6 +47,14 @@ params.config="" params.tissue="" +if (params.input == "" || params.bed == "" || params.genome_fasta == "" || params.jaspar_db == "" || params.config == ""){ +log.info """ +NAME +Usage: nextflow run pipeline.nf --input [INPUT-file] --bed [INPUT-bed] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] +""" +} + + process footprint_extraction { conda "${path_env}" From 01f34921627f921002604c4c89e30079c75180ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 6 Dec 2018 03:47:49 -0500 Subject: [PATCH 131/206] added new config file 'filter_unknown_motifs' --- config/filter_unknown_motifs.config | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 config/filter_unknown_motifs.config diff --git a/config/filter_unknown_motifs.config b/config/filter_unknown_motifs.config new file mode 100644 index 0000000..79033c4 --- /dev/null +++ b/config/filter_unknown_motifs.config @@ -0,0 +1,4 @@ +params{ + min_size_fp=10 + max_size_fp=100 +} From 8476db5a21a5891f34574ef55375289f25caed66 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 09:51:41 +0100 Subject: [PATCH 132/206] implemented motif_occurence for cutoff computation --- bin/reduce_bed.R | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index d539399..b3c1c6d 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -10,8 +10,8 @@ option_list <- list( make_option(opt_str = c("-c", "--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical"), make_option(opt_str = c("-s", "--min_seq_length"), default = NULL, help = "Remove sequences below this length. Defaults to the maximum value of motif and kmer and can not be lower.", metavar = "integer", type = "integer"), make_option(opt_str = c("-ko", "--minoverlap_kmer"), default = NULL, help = "Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges. Can not be greater than kmer length. Default = kmer - 1", metavar = "integer", type = "integer"), - make_option(opt_str = c("-mo", "--minoverlap_motif"), default = NULL, help = "Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation. Can not be greater than motif and kmer length. Default = ceiling(motif / 2)", metavar = "integer", type = "integer") - # TODO more args + make_option(opt_str = c("-mo", "--minoverlap_motif"), default = NULL, help = "Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation. Can not be greater than motif and kmer length. Default = ceiling(motif / 2)", metavar = "integer", type = "integer"), + make_option(opt_str = c("-f", "--motif_occurence"), default = 1, help = "Number of motifs per sequence any value above 0. Default = %default.") ) opt_parser <- OptionParser(option_list = option_list, @@ -30,10 +30,11 @@ opt <- parse_args(opt_parser) #' @param minoverlap_kmer Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges. Can not be greater than kmer length. Default = kmer - 1 #' @param minoverlap_motif Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation. Can not be greater than motif and kmer length. Default = ceiling(motif / 2) #' @param min_seq_length Must be greater or equal to kmer and motif. Default = max(c(motif, kmer)). +#' @param motif_occurence Define how many motifs are expected per sequence. This value is used during kmer cutoff calculation. Default = 1 meaning that there should be approximately one motif per sequence. #' #' @return reduced bed #' TODO check whether jellyfish is installed -reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", threads = NULL, clean = TRUE, minoverlap_kmer = kmer - 1, minoverlap_motif = ceiling(motif / 2), min_seq_length = max(c(motif, kmer))) { +reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", threads = NULL, clean = TRUE, minoverlap_kmer = kmer - 1, minoverlap_motif = ceiling(motif / 2), min_seq_length = max(c(motif, kmer)), motif_occurence = 1) { # get number of available cores if (threads == -1) { threads <- parallel::detectCores() @@ -93,7 +94,7 @@ reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", thr data.table::setorder(kmer_counts, -V2) # compute number of hits to keep - keep_hits <- significant_kmer(bed_table, kmer = kmer, motif = motif, minoverlap = minoverlap_motif) + keep_hits <- significant_kmer(bed_table, kmer = kmer, motif = motif, minoverlap = minoverlap_motif, motif_occurence = motif_occurence) # reduce kmer reduced_kmer <- reduce_kmer(kmer = kmer_counts, significant = keep_hits) @@ -136,12 +137,16 @@ reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", thr #' @param kmer Length of kmer #' @param motif Length of motif #' @param minoverlap Minimum number of bases overlapping between kmer and motif. Must be <= motif & <= kmer. Defaults to ceiling(motif / 2). +#' @param motif_occurence Define how many motifs are expected per sequence. Default = 1 #' #' @return Number of interesting kmer. -significant_kmer <- function(bed, kmer, motif, minoverlap = ceiling(motif / 2)) { +significant_kmer <- function(bed, kmer, motif, minoverlap = ceiling(motif / 2), motif_occurence = 1) { if (minoverlap > kmer || minoverlap > motif) { stop("Kmer & motif must be greater or equal to minoverlap!") } + if (motif_occurence <= 0) { + stop("Motif_occurence must be a numeric value above 0!") + } # minimum sequence length to get all interesting overlaps min_seq_length <- motif + 2 * (kmer - minoverlap) @@ -154,7 +159,7 @@ significant_kmer <- function(bed, kmer, motif, minoverlap = ceiling(motif / 2)) # calculate max possible kmer topx <- sum(seq_lengths - kmer + 1) - return(topx) + return(topx * motif_occurence) } #' Orders kmer table after count descending and keeps all kmer with a cumulative sum below the given significance threshold. @@ -179,6 +184,8 @@ reduce_kmer <- function(kmer, significant) { #' @param threads Number of threads. #' #' @return Data.table with relative positions and width (start, end, width). +#' +#' TODO Include number of motifs per sequence (aka motif_occurence). Attempt to keep best 2 regions for occurence = 2? Probably high impact on performance. find_kmer_regions <- function(bed, kmer_counts, minoverlap = 1 , threads = NULL) { if (nchar(kmer_counts[1, 1]) <= minoverlap) { stop("Minoverlap must be smaller than kmer length!") From f0e2cef3c6fe4a0a81144b6dfbbadfa651f753f7 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 09:56:06 +0100 Subject: [PATCH 133/206] threads = 0 for all cores to match cd-hit --- bin/reduce_bed.R | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index b3c1c6d..c022b43 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -6,7 +6,7 @@ option_list <- list( make_option(opt_str = c("-k", "--kmer"), default = 10, help = "Kmer length. Default = %default", metavar = "integer"), make_option(opt_str = c("-m", "--motif"), default = 10, help = "Estimated motif length. Default = %default", metavar = "integer"), make_option(opt_str = c("-o", "--output"), default = "reduced.bed", help = "Output file. Default = %default", metavar = "character"), - make_option(opt_str = c("-t", "--threads"), default = 1, help = "Number of threads to use. Use -1 for all available cores. Default = %default", metavar = "integer"), + make_option(opt_str = c("-t", "--threads"), default = 1, help = "Number of threads to use. Use 0 for all available cores. Default = %default", metavar = "integer"), make_option(opt_str = c("-c", "--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical"), make_option(opt_str = c("-s", "--min_seq_length"), default = NULL, help = "Remove sequences below this length. Defaults to the maximum value of motif and kmer and can not be lower.", metavar = "integer", type = "integer"), make_option(opt_str = c("-ko", "--minoverlap_kmer"), default = NULL, help = "Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges. Can not be greater than kmer length. Default = kmer - 1", metavar = "integer", type = "integer"), @@ -25,7 +25,7 @@ opt <- parse_args(opt_parser) #' @param kmer Length of kmer. #' @param motif Estimated motif length. #' @param output Output file -#' @param threads Number of threads. +#' @param threads Number of threads. Default = 1. 0 for all cores. #' @param clean Delete all temporary files. #' @param minoverlap_kmer Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges. Can not be greater than kmer length. Default = kmer - 1 #' @param minoverlap_motif Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation. Can not be greater than motif and kmer length. Default = ceiling(motif / 2) @@ -36,7 +36,7 @@ opt <- parse_args(opt_parser) #' TODO check whether jellyfish is installed reduce_bed <- function(input, kmer = 10, motif = 10, output = "reduced.bed", threads = NULL, clean = TRUE, minoverlap_kmer = kmer - 1, minoverlap_motif = ceiling(motif / 2), min_seq_length = max(c(motif, kmer)), motif_occurence = 1) { # get number of available cores - if (threads == -1) { + if (threads == 0) { threads <- parallel::detectCores() } From 1d466c5417030b9a438ff91685c2482f69447c28 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 6 Dec 2018 03:58:32 -0500 Subject: [PATCH 134/206] help message --- pipeline.nf | 56 ++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 45 insertions(+), 11 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 3610955..e694ba0 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -6,8 +6,6 @@ Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan; fa_overlap_2} Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} Channel.fromPath(params.config).set {config} -bigwig_input.combine(bed_input).set{footprint_in} - //setting default values params.input="" params.bed="" @@ -37,7 +35,7 @@ params.config="" //glam2 params.motif_min_len = 8 // Minimum length of Motifs params.motif_max_len = 20 // Maximum length of Motifs - params.interation = 10000 // Number of Iterations done by glam2. A high iteration number equals higher more accurate but higher runtime. + params.interation = 10000 // Number of Iterations done by glam2. A high iteration number equals a more accurate result but with an higher runtime. //tomtom params.tomtom_treshold = 0.01 // threshold for similarity score. @@ -49,18 +47,54 @@ params.config="" if (params.input == "" || params.bed == "" || params.genome_fasta == "" || params.jaspar_db == "" || params.config == ""){ log.info """ -NAME -Usage: nextflow run pipeline.nf --input [INPUT-file] --bed [INPUT-bed] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] +Usage: nextflow run pipeline.nf --input [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --jaspar_db [MEME-file] + +Required arguments: + --input Path to BigWig-file + --bed Path to BED-file + --genome_fasta Path to genome in FASTA-format + --jaspar_db Path to motif-database in MEME-format + + +Optional arguments: + Footprint extraction: + --window_length INT (Default: 200) + --step INT (Default: 100) + --percentage INT(Default: 0) + + Filter unknown motifs: + --min_size_fp INT (Default: 10) + --max_size_fp INT (Default: 100) + + Clustering: + --sequence_coverage INT (Default: 8) + --kmer INT (Default: 10) + --aprox_motif_len INT (Default: 10) + + Motif estimation: + --motif_min_len INT Minimum length of Motif (Default: 8) + --motif_max_len INT Maximum length of Motif (Default: 20) + --interation INT Number of iterations done by glam2. More Interations: better results, higher runtime. (Default: 10000) + --tomtom_treshold float Threshold for similarity score. (Default: 0.01) + + Creating GTF: + --organism [homo_sapiens | mus_musculus] + --tissues + +All arguments can be set in the configuration files. """ } +bigwig_input.combine(bed_input).set{footprint_in} + + process footprint_extraction { conda "${path_env}" tag{name} - publishDir '${out}', mode: 'copy', pattern: '*.bed' - publishDir '/mnt/agnerds/Rene.Wiegandt/log', mode: 'copy', pattern: '*.log' + publishDir "${out}", mode: 'copy', pattern: '*.bed' + publishDir "${out}/log", mode: 'copy', pattern: '*.log' input: set name, file (bigWig), file (bed) from footprint_in @@ -257,7 +291,7 @@ process get_best_motif { best_motif.combine(fa_scan).set {files_for_genome_scan} - +/* process genome_scan { conda "${path_env}" @@ -284,7 +318,7 @@ process cluster_quality { script: """ """ -} +} */ process create_GTF { @@ -301,7 +335,7 @@ process create_GTF { """ } - +/* bed_for_final_filter.combine(gtf_for_uropa).set {uropa_in} @@ -348,4 +382,4 @@ process filter { script: """ """ -} +} */ From 688cb007bdb097a8a5c00c18a5986c8c4d05397c Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 6 Dec 2018 10:02:21 +0100 Subject: [PATCH 135/206] Update README.md --- README.md | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/README.md b/README.md index 4cf5660..d746944 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,43 @@ source activate masterenv nextflow run pipeline.nf --input [INPUT-file] --bed [INPUT-bed] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] --config uropa.config ``` ## Parameter +``` +Required arguments: + --input Path to BigWig-file + --bed Path to BED-file + --genome_fasta Path to genome in FASTA-format + --jaspar_db Path to motif-database in MEME-format + + +Optional arguments: + Footprint extraction: + --window_length INT (Default: 200) + --step INT (Default: 100) + --percentage INT(Default: 0) + + Filter unknown motifs: + --min_size_fp INT (Default: 10) + --max_size_fp INT (Default: 100) + + Clustering: + --sequence_coverage INT (Default: 8) + --kmer INT (Default: 10) + --aprox_motif_len INT (Default: 10) + + Motif estimation: + --motif_min_len INT Minimum length of Motif (Default: 8) + --motif_max_len INT Maximum length of Motif (Default: 20) + --interation INT Number of iterations done by glam2. More Interations: better results, higher runtime. (Default: 10000) + --tomtom_treshold float Threshold for similarity score. (Default: 0.01) + + Creating GTF: + --organism [homo_sapiens | mus_musculus] + --tissues + + All arguments can be set in the configuration files. + ``` + + For further information read the [documentation](https://github.molgen.mpg.de/loosolab/masterJLU2018/wiki) From 65e17ce0d85d483e878696b7d014bb6638aa031d Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 6 Dec 2018 10:02:54 +0100 Subject: [PATCH 136/206] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d746944..f457df8 100644 --- a/README.md +++ b/README.md @@ -22,7 +22,7 @@ source activate masterenv ```console nextflow run pipeline.nf --input [INPUT-file] --bed [INPUT-bed] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] --config uropa.config ``` -## Parameter +## Parameters ``` Required arguments: --input Path to BigWig-file From 0bdc1016eba520a8a371600db9cf57c82c9348b2 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 6 Dec 2018 10:03:35 +0100 Subject: [PATCH 137/206] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f457df8..6431022 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ source activate masterenv ## Quick Start ```console -nextflow run pipeline.nf --input [INPUT-file] --bed [INPUT-bed] --genome_fasta [path to file] --jaspar_db [path to motif database as meme-file] --config uropa.config +nextflow run pipeline.nf --input [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --jaspar_db [MEME-file] ``` ## Parameters ``` From a62154ca9c57826cf163599ec5b27b8ac40cbd25 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 6 Dec 2018 10:34:44 +0100 Subject: [PATCH 138/206] Update README.md --- README.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6431022..f36beca 100644 --- a/README.md +++ b/README.md @@ -10,13 +10,23 @@ De novo motif discovery and evaluation based on footprints identified by TOBIAS ## Installation Start with installing all dependencies listed above. Download all files from the [GitHub repository](https://github.molgen.mpg.de/loosolab/masterJLU2018). -The Nextflow-script needs a conda enviroment to run. To create this enviroment you need the yml-file from the repository. +The Nextflow-script needs a conda enviroment to run. Nextflow can create the needed enviroment from the given yaml-file. +On some systems Nrxtflow exits the run with following error: +``` +Caused by: + Failed to create Conda environment + command: conda env create --prefix --file env.yml + status : 143 + message: +``` +If this error occurs you have to create the enviroment before starting the pipeline. +To create this enviroment you need the yml-file from the repository. Run the following commands to create the enviroment: ```console path=[Path to given masterenv.yml file] conda env create --name masterenv -f=$path -source activate masterenv ``` +When the enviroment is created, set the variable 'path_env' in the configuration file as the path to it. ## Quick Start ```console From 0467d7b581680773dd23ea119cfd710897136182 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 11:31:00 +0100 Subject: [PATCH 139/206] added more cdhit parameter --- bin/cdhit_wrapper.R | 126 ++++++++++++++++++++++++++++++++------------ 1 file changed, 91 insertions(+), 35 deletions(-) diff --git a/bin/cdhit_wrapper.R b/bin/cdhit_wrapper.R index f26a71a..9c62564 100644 --- a/bin/cdhit_wrapper.R +++ b/bin/cdhit_wrapper.R @@ -3,53 +3,77 @@ library("optparse") option_list <- list( make_option(opt_str = c("-i", "--input"), default = NULL, help = "Input bed-file. Fourth column is expected to contain names, last column must be sequences.", metavar = "character"), - make_option(opt_str = c("-c", "--identity"), default = 0.8, help = "Identity threshold. Default = %default", metavar = "double >= 0.8"), - make_option(opt_str = c("-A", "--coverage"), default = 8, help = "Minimal alignment length for both sequences in nucelotides. Default = %default", metavar = "integer"), + make_option(opt_str = c("-c", "--identity"), default = 0.8, help = "Identity threshold. Default = %default (CD-HIT parameter)", metavar = "double >= 0.8"), + make_option(opt_str = c("-A", "--coverage"), default = 8, help = "Minimal alignment length for both sequences in nucelotides. Default = %default (CD-HIT parameter)", metavar = "integer"), make_option(opt_str = c("-o", "--output"), default = "cluster.bed", help = "Output file same as input but with appended column of cluster numbers. Default = %default", metavar = "character"), make_option(opt_str = c("--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical"), - # make_option(opt_str = c("-G", "--global"), default = FALSE), - # make_option(opt_str = c("-b", "--band_width"), default = 20), - # make_option(opt_str = c("-M", "--memory"), default = 800), - make_option(opt_str = c("-T", "--threads"), default = 1)#, - # make_option(opt_str = c("-n", "--word_length"), default = 3), - # make_option(opt_str = c("-l", "--throw_away_sequences"), default = 5), + make_option(opt_str = c("-G", "--global"), default = 0, help = "Global sequence identity = 1, local = 0. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-b", "--band_width"), default = 20, help = "Alignment band width. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-M", "--memory"), default = 800, help = "Memory limit in MB. 0 for unlimited. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-T", "--threads"), default = 1, help = "Number of threads. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-n", "--word_length"), default = 3, help = "Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-l", "--throw_away_sequences"), default = 5, help = "Maximum length of sequences thrown away. Default = %default (CD-HIT parameter)", metavar = "integer"), # make_option(opt_str = c("-d", "--description")), # can not produce bed if this is != 0 - # make_option(opt_str = c("-s", "--length_dif_cutoff_shorter_p"), default = 0.0), - # make_option(opt_str = c("-S", "--length_dif_cutoff_shorter_n"), default = 999999), - # make_option(opt_str = c("-aL", "--alignment_coverage_longer_p"), default = 0.0), - # make_option(opt_str = c("-AL", "--alignment_coverage_longer_n"), default = 99999999), - # make_option(opt_str = c("-aS", "--alignment_coverage_shorter_p"), default = 0.0), - # make_option(opt_str = c("-AS", "--alignment_coverage_shorter_n"), default = 99999999), - # make_option(opt_str = c("-uL", "--max_unmatched_longer_p"), default = 1.0), - # make_option(opt_str = c("-uS", "--max_unmatched_shorter_p"), default = 99999999), - # make_option(opt_str = c("-U", "--max_unmatched_both_n"), default = 99999999), - # make_option(opt_str = c("-g", "--fast_cluster"), default = FALSE), - # make_option(opt_str = c("-r", "--ignore_strand"), default = TRUE), - # make_option(opt_str = c("--match"), default = 2), - # make_option(opt_str = c("--mismatch"), default = -2), - # make_option(opt_str = c("--gap"), default = -6), - # make_option(opt_str = c("--gap_ext"), default = -1), - # make_option(opt_str = c("-sc", "--sort_cluster_by_size"), default = TRUE) - # TODO more args + make_option(opt_str = c("-s", "--length_dif_cutoff_shorter_p"), default = 0.0, help = "Shorter sequences length must be at least x percent of longer sequenecs length. Default = %default (CD-HIT parameter)", metavar = "double"), + make_option(opt_str = c("-S", "--length_dif_cutoff_shorter_n"), default = 999999, help = "Length difference between sequences can not be higher than x nucleotides. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-aL", "--alignment_coverage_longer_p"), default = 0.0, help = "Alignment must cover x percent of longer sequence. Default = %default (CD-HIT parameter)", metavar = "double"), + make_option(opt_str = c("-AL", "--alignment_coverage_longer_n"), default = 99999999, help = "There can not be more than x unaligned nucleotides on the longer sequence. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-aS", "--alignment_coverage_shorter_p"), default = 0.0, help = "Alignment must cover x percent of shorter sequence. Default = %default (CD-HIT parameter)", metavar = "double"), + make_option(opt_str = c("-AS", "--alignment_coverage_shorter_n"), default = 99999999, help = "There can not be more than x unaligned nucleotides on the longer sequence. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-uL", "--max_unmatched_longer_p"), default = 1.0, help = "Maximum unmatched percentage on longer sequence (excludes leading tailing gap). Default = %default (CD-HIT parameter)", metavar = "double"), + make_option(opt_str = c("-uS", "--max_unmatched_shorter_p"), default = 1.0, help = "Maximum unmatched percentage on shorter sequence (excludes leading tailing gap). Default = %default (CD-HIT parameter)", metavar = "double"), + make_option(opt_str = c("-U", "--max_unmatched_both_n"), default = 99999999, help = "Maximum unmatched nucleotied on both sequences (excludes leading tailing gap). Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-g", "--fast_cluster"), default = 1, help = "Cluster sequence in first cluster that meets threshold = 0 (fast). Or cluster in best Cluster = 1 (accurate). Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-r", "--ignore_strand"), default = 0, help = "Align +/+ & +/- (= 1). Or align only +/+ (= 0). Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("--match"), default = 2, help = "Matching score. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("--mismatch"), default = -2, help = "Mismatch score. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("--gap"), default = -6, help = "Gap score. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("--gap_ext"), default = -1, help = "Gap extension score. Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-sc", "--sort_cluster_by_size"), default = 1, help = "Either sort cluster by decreasing length (= 0) or by decreasing size (= 1). Default = %default (CD-HIT parameter)", metavar = "integer") ) opt_parser <- OptionParser(option_list = option_list, - description = "CD-HIT-EST Wrapper function.") + description = "CD-HIT-EST Wrapper function. See https://github.com/weizhongli/cdhit/wiki for more information regarding CD-HITs parameters.") opt <- parse_args(opt_parser) -#' cd-hit wrapper +#' cd-hit-est wrapper +#' Receives bed with sequences in last column and writes bed with added cluster numbers. #' #' @param input Data.table or file in bed format (requires names in fourth column and sequences in last column). -#' @param identity Identity threshold. -#' @param coverage Minimal alignment length for both sequences in nucelotides. -#' @param output Clustered bedfile. Adds cluster number in last column (lower number = bigger cluster). -#' @param clean Clean up after run. -#' @param threads Number of threads to use in cd-hit (0 = all cpus). +#' @param identity Identity threshold. Default = 0.8 (CD-HIT parameter) +#' @param coverage Minimal alignment length for both sequences in nucelotides. Default = 8 (CD-HIT parameter) +#' @param output Clustered bedfile. Adds cluster number in last column (numbering depend on sort_by_cluster_size parameter). Default = cluster.bed +#' @param clean Clean up after run. Default = TRUE +#' @param threads Number of threads to use (0 = all cores). Default = 1 (CD-HIT parameter) +#' @param global Global sequence identity = 1, local = 0. Default = 0 (CD-HIT parameter) +#' @param band_width "Alignment band width. Default = 20 (CD-HIT parameter)" +#' @param memory Memory limit in MB. 0 for unlimited. Default = 800 (CD-HIT parameter) +#' @param word_length Default = 3 (CD-HIT parameter) +#' @param throw_away_sequences Maximum length of sequences thrown away. Default = %default (CD-HIT parameter) +#' @param length_dif_cutoff_shorter_p Shorter sequences length must be at least x percent of longer sequenecs length. Default = 0 (CD-HIT parameter) +#' @param length_dif_cutoff_shorter_n Length difference between sequences can not be higher than x nucleotides. Default = 999999 (CD-HIT parameter) +#' @param alignment_coverage_longer_p Alignment must cover x percent of longer sequence. Default = 0 (CD-HIT parameter) +#' @param alignment_coverage_longer_n There can not be more than x unaligned nucleotides on the longer sequence. Default = 99999999 (CD-HIT parameter) +#' @param alignment_coverage_shorter_p Alignment must cover x percent of shorter sequence. Default = 0 (CD-HIT parameter) +#' @param alignment_coverage_shorter_n There can not be more than x unaligned nucleotides on the longer sequence. Default = 99999999 (CD-HIT parameter) +#' @param max_unmatched_longer_p Maximum unmatched percentage on longer sequence (excludes leading tailing gap). Default = 1 (CD-HIT parameter) +#' @param max_unmatched_shorter_p Maximum unmatched percentage on shorter sequence (excludes leading tailing gap). Default = 1 (CD-HIT parameter) +#' @param max_unmatched_both_n Maximum unmatched nucleotied on both sequences (excludes leading tailing gap). Default = 99999999 (CD-HIT parameter) +#' @param fast_cluster Cluster sequence in first cluster that meets threshold = 0 (fast). Or cluster in best Cluster = 1 (accurate). Default = 1 (CD-HIT parameter) +#' @param ignore_strand Align +/+ & +/- (= 1). Or align only +/+ (= 0). Default = 0 (CD-HIT parameter) +#' @param match Matching score. Default = 2 (CD-HIT parameter) +#' @param mismatch Mismatch score. Default = -2 (CD-HIT parameter) +#' @param gap Gap score. Default = -6 (CD-HIT parameter) +#' @param gat_ext Gap extension score. Default = -1 (CD-HIT parameter) +#' @param sort_cluster_by_size Either sort cluster by decreasing length (= 0) or by decreasing size (= 1). Default = 1 (CD-HIT parameter) #' -#' TODO add all cdhit parameter (necessary ?) #' TODO check whether cdhit is installed -cdhitest <- function(input, identity = 0.8, coverage = 8, output = "cluster.bed", clean = TRUE, threads = 1) { +cdhitest <- function(input, identity = 0.8, coverage = 8, output = "cluster.bed", clean = TRUE, threads = 1, global = 0, band_width = 20, memory = 800, word_length = 3, throw_away_sequences = 5, length_dif_cutoff_shorter_p = 0, length_dif_cutoff_shorter_n = 999999, alignment_coverage_longer_p = 0, alignment_coverage_longer_n = 99999999, alignment_coverage_shorter_p = 0, alignment_coverage_shorter_n = 99999999, max_unmatched_longer_p = 1, max_unmatched_shorter_p = 1, max_unmatched_both_n = 99999999, fast_cluster = 1, ignore_strand = 0, match = 2, mismatch = -2, gap = -6, gap_ext = -1, sort_cluster_by_size = 1) { + if (missing(input)) { + stop("Input parameter missing!") + } + message("Loading bed.") # load bed if neccessary if (!data.table::is.data.table(input)) { @@ -58,6 +82,12 @@ cdhitest <- function(input, identity = 0.8, coverage = 8, output = "cluster.bed" bed_table <- input } + # check for duplicated names + if (anyDuplicated(bed_table[, "V4"])) { + warning("Found duplicated names. Making names unique.") + bed_table[, V4 := make.unique(V4)] + } + message("Convert to fasta.") ### convert bed to fasta # 4th column = name @@ -68,7 +98,33 @@ cdhitest <- function(input, identity = 0.8, coverage = 8, output = "cluster.bed" message("Clustering.") ### cd-hit-est cdhit_output <- "cdhit_output" - cdhit_call <- paste("cd-hit-est -i", fasta_file, "-o", cdhit_output, "-c", identity, "-A", coverage, "-T ", threads, "-G 0 -n 3 -g 1 -r 0 -l 5 -sc 1 -d 0") + cdhit_call <- paste("cd-hit-est -i", fasta_file, + "-o", cdhit_output, + "-c", identity, + "-A", coverage, + "-T", threads, + "-G", global, + "-b", band_width, + "-M", memory, + "-n", word_length, + "-l", throw_away_sequences, + "-s", length_dif_cutoff_shorter_p, + "-S", length_dif_cutoff_shorter_n, + "-aL", alignment_coverage_longer_p, + "-AL", alignment_coverage_longer_n, + "-aS", alignment_coverage_shorter_p, + "-AS", alignment_coverage_shorter_n, + "-uL", max_unmatched_longer_p, + "-uS", max_unmatched_shorter_p, + "-U", max_unmatched_both_n, + "-g", fast_cluster, + "-r", ignore_strand, + "-match", match, + "-mismatch", mismatch, + "-gap", gap, + "-gap-ext", gap_ext, + "-sc", sort_cluster_by_size, + "-d 0") system(command = cdhit_call, wait = TRUE) From 4b44ca59e7b7cb0b06c44352eb15677cc5020511 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 12:15:38 +0100 Subject: [PATCH 140/206] changed type of motif_occurence to double --- bin/reduce_bed.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index c022b43..efe5bf5 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -11,7 +11,7 @@ option_list <- list( make_option(opt_str = c("-s", "--min_seq_length"), default = NULL, help = "Remove sequences below this length. Defaults to the maximum value of motif and kmer and can not be lower.", metavar = "integer", type = "integer"), make_option(opt_str = c("-ko", "--minoverlap_kmer"), default = NULL, help = "Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges. Can not be greater than kmer length. Default = kmer - 1", metavar = "integer", type = "integer"), make_option(opt_str = c("-mo", "--minoverlap_motif"), default = NULL, help = "Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation. Can not be greater than motif and kmer length. Default = ceiling(motif / 2)", metavar = "integer", type = "integer"), - make_option(opt_str = c("-f", "--motif_occurence"), default = 1, help = "Number of motifs per sequence any value above 0. Default = %default.") + make_option(opt_str = c("-f", "--motif_occurence"), default = 1, help = "Number of motifs per sequence any value above 0. Default = %default.", metavar = "double") ) opt_parser <- OptionParser(option_list = option_list, From c6c42ca1e19e6a3f838a3960cd732e86ae96ff21 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 12:30:21 +0100 Subject: [PATCH 141/206] renamed ignore_strand to strand --- bin/cdhit_wrapper.R | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/cdhit_wrapper.R b/bin/cdhit_wrapper.R index 9c62564..c9a8241 100644 --- a/bin/cdhit_wrapper.R +++ b/bin/cdhit_wrapper.R @@ -24,7 +24,7 @@ option_list <- list( make_option(opt_str = c("-uS", "--max_unmatched_shorter_p"), default = 1.0, help = "Maximum unmatched percentage on shorter sequence (excludes leading tailing gap). Default = %default (CD-HIT parameter)", metavar = "double"), make_option(opt_str = c("-U", "--max_unmatched_both_n"), default = 99999999, help = "Maximum unmatched nucleotied on both sequences (excludes leading tailing gap). Default = %default (CD-HIT parameter)", metavar = "integer"), make_option(opt_str = c("-g", "--fast_cluster"), default = 1, help = "Cluster sequence in first cluster that meets threshold = 0 (fast). Or cluster in best Cluster = 1 (accurate). Default = %default (CD-HIT parameter)", metavar = "integer"), - make_option(opt_str = c("-r", "--ignore_strand"), default = 0, help = "Align +/+ & +/- (= 1). Or align only +/+ (= 0). Default = %default (CD-HIT parameter)", metavar = "integer"), + make_option(opt_str = c("-r", "--strand"), default = 0, help = "Align +/+ & +/- (= 1). Or align only +/+ (= 0). Default = %default (CD-HIT parameter)", metavar = "integer"), make_option(opt_str = c("--match"), default = 2, help = "Matching score. Default = %default (CD-HIT parameter)", metavar = "integer"), make_option(opt_str = c("--mismatch"), default = -2, help = "Mismatch score. Default = %default (CD-HIT parameter)", metavar = "integer"), make_option(opt_str = c("--gap"), default = -6, help = "Gap score. Default = %default (CD-HIT parameter)", metavar = "integer"), @@ -61,7 +61,7 @@ opt <- parse_args(opt_parser) #' @param max_unmatched_shorter_p Maximum unmatched percentage on shorter sequence (excludes leading tailing gap). Default = 1 (CD-HIT parameter) #' @param max_unmatched_both_n Maximum unmatched nucleotied on both sequences (excludes leading tailing gap). Default = 99999999 (CD-HIT parameter) #' @param fast_cluster Cluster sequence in first cluster that meets threshold = 0 (fast). Or cluster in best Cluster = 1 (accurate). Default = 1 (CD-HIT parameter) -#' @param ignore_strand Align +/+ & +/- (= 1). Or align only +/+ (= 0). Default = 0 (CD-HIT parameter) +#' @param strand Align +/+ & +/- (= 1). Or align only +/+ (= 0). Default = 0 (CD-HIT parameter) #' @param match Matching score. Default = 2 (CD-HIT parameter) #' @param mismatch Mismatch score. Default = -2 (CD-HIT parameter) #' @param gap Gap score. Default = -6 (CD-HIT parameter) @@ -69,7 +69,7 @@ opt <- parse_args(opt_parser) #' @param sort_cluster_by_size Either sort cluster by decreasing length (= 0) or by decreasing size (= 1). Default = 1 (CD-HIT parameter) #' #' TODO check whether cdhit is installed -cdhitest <- function(input, identity = 0.8, coverage = 8, output = "cluster.bed", clean = TRUE, threads = 1, global = 0, band_width = 20, memory = 800, word_length = 3, throw_away_sequences = 5, length_dif_cutoff_shorter_p = 0, length_dif_cutoff_shorter_n = 999999, alignment_coverage_longer_p = 0, alignment_coverage_longer_n = 99999999, alignment_coverage_shorter_p = 0, alignment_coverage_shorter_n = 99999999, max_unmatched_longer_p = 1, max_unmatched_shorter_p = 1, max_unmatched_both_n = 99999999, fast_cluster = 1, ignore_strand = 0, match = 2, mismatch = -2, gap = -6, gap_ext = -1, sort_cluster_by_size = 1) { +cdhitest <- function(input, identity = 0.8, coverage = 8, output = "cluster.bed", clean = TRUE, threads = 1, global = 0, band_width = 20, memory = 800, word_length = 3, throw_away_sequences = 5, length_dif_cutoff_shorter_p = 0, length_dif_cutoff_shorter_n = 999999, alignment_coverage_longer_p = 0, alignment_coverage_longer_n = 99999999, alignment_coverage_shorter_p = 0, alignment_coverage_shorter_n = 99999999, max_unmatched_longer_p = 1, max_unmatched_shorter_p = 1, max_unmatched_both_n = 99999999, fast_cluster = 1, strand = 0, match = 2, mismatch = -2, gap = -6, gap_ext = -1, sort_cluster_by_size = 1) { if (missing(input)) { stop("Input parameter missing!") } @@ -118,7 +118,7 @@ cdhitest <- function(input, identity = 0.8, coverage = 8, output = "cluster.bed" "-uS", max_unmatched_shorter_p, "-U", max_unmatched_both_n, "-g", fast_cluster, - "-r", ignore_strand, + "-r", strand, "-match", match, "-mismatch", mismatch, "-gap", gap, From b769d49f6506b47915bf32821a00aed1603f9f82 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 12:43:58 +0100 Subject: [PATCH 142/206] new clustering parameter added --- config/cluster.config | 14 ++++++++++++-- pipeline.nf | 4 ++-- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/config/cluster.config b/config/cluster.config index 3dce063..2a1828c 100644 --- a/config/cluster.config +++ b/config/cluster.config @@ -1,7 +1,17 @@ params{ - sequence_coverage=8 + threads=1 + //reduce_bed kmer=10 aprox_motif_len=10 - threads=1 + motif_occurence=1 + min_seq_length=10 + + //cdhit_wrapper + global=0 + identity=0.8 + sequence_coverage=8 + memory=800 + throw_away_seq=9 + strand=0 } diff --git a/pipeline.nf b/pipeline.nf index 5ed2eac..1fabdc3 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -75,7 +75,7 @@ process reduce_bed { script: """ - Rscript ${path_bin}/reduce_bed.R -i ${bed} -k ${params.kmer} -m ${params.aprox_motif_len} -o ${name}_reduced.bed -t ${params.threads} + Rscript ${path_bin}/reduce_bed.R -i ${bed} -k ${params.kmer} -m ${params.aprox_motif_len} -o ${name}_reduced.bed -t ${params.threads} -f ${params.motif_occurence} -s ${params.min_seq_length} """ } @@ -91,7 +91,7 @@ process clustering { script: """ - Rscript ${path_bin}/cdhit_wrapper.R -i ${bed} -A ${params.sequence_coverage} -o ${name}_clusterd.bed + Rscript ${path_bin}/cdhit_wrapper.R -i ${bed} -A ${params.sequence_coverage} -o ${name}_clusterd.bed -c ${params.identity} -G ${params.global} -M ${params.memory} -l ${params.throw_away_seq} -r ${params.strand} -T ${params.threads} """ } From 2700ce7904b7594d7b52553cb291e3fb4af6a75e Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 6 Dec 2018 13:14:46 +0100 Subject: [PATCH 143/206] Update README.md --- README.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index f36beca..994029a 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,14 @@ De novo motif discovery and evaluation based on footprints identified by TOBIAS * [MEME-Suite](http://meme-suite.org/doc/install.html?man_type=web) ## Installation -Start with installing all dependencies listed above. +Start with installing all dependencies listed above. It is required to set the [enviroment paths for meme-suite](http://meme-suite.org/doc/install.html?man_type=web#installingtar). +this can be done with following commands: +``` +export PATH=[meme-suite instalation path]/libexec/meme-[meme-suite version]:$PATH +export PATH=[meme-suite instalation path]/bin:$PATH +``` + + Download all files from the [GitHub repository](https://github.molgen.mpg.de/loosolab/masterJLU2018). The Nextflow-script needs a conda enviroment to run. Nextflow can create the needed enviroment from the given yaml-file. On some systems Nrxtflow exits the run with following error: From 1a457039b1aff1cff51256fd4117b4a9cbd74866 Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 13:55:35 +0100 Subject: [PATCH 144/206] fixed ambiguous flags --- bin/cdhit_wrapper.R | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/bin/cdhit_wrapper.R b/bin/cdhit_wrapper.R index c9a8241..e5ed3e4 100644 --- a/bin/cdhit_wrapper.R +++ b/bin/cdhit_wrapper.R @@ -16,12 +16,12 @@ option_list <- list( # make_option(opt_str = c("-d", "--description")), # can not produce bed if this is != 0 make_option(opt_str = c("-s", "--length_dif_cutoff_shorter_p"), default = 0.0, help = "Shorter sequences length must be at least x percent of longer sequenecs length. Default = %default (CD-HIT parameter)", metavar = "double"), make_option(opt_str = c("-S", "--length_dif_cutoff_shorter_n"), default = 999999, help = "Length difference between sequences can not be higher than x nucleotides. Default = %default (CD-HIT parameter)", metavar = "integer"), - make_option(opt_str = c("-aL", "--alignment_coverage_longer_p"), default = 0.0, help = "Alignment must cover x percent of longer sequence. Default = %default (CD-HIT parameter)", metavar = "double"), - make_option(opt_str = c("-AL", "--alignment_coverage_longer_n"), default = 99999999, help = "There can not be more than x unaligned nucleotides on the longer sequence. Default = %default (CD-HIT parameter)", metavar = "integer"), - make_option(opt_str = c("-aS", "--alignment_coverage_shorter_p"), default = 0.0, help = "Alignment must cover x percent of shorter sequence. Default = %default (CD-HIT parameter)", metavar = "double"), - make_option(opt_str = c("-AS", "--alignment_coverage_shorter_n"), default = 99999999, help = "There can not be more than x unaligned nucleotides on the longer sequence. Default = %default (CD-HIT parameter)", metavar = "integer"), - make_option(opt_str = c("-uL", "--max_unmatched_longer_p"), default = 1.0, help = "Maximum unmatched percentage on longer sequence (excludes leading tailing gap). Default = %default (CD-HIT parameter)", metavar = "double"), - make_option(opt_str = c("-uS", "--max_unmatched_shorter_p"), default = 1.0, help = "Maximum unmatched percentage on shorter sequence (excludes leading tailing gap). Default = %default (CD-HIT parameter)", metavar = "double"), + make_option(opt_str = c("-e", "--alignment_coverage_longer_p"), default = 0.0, help = "Alignment must cover x percent of longer sequence. Default = %default (CD-HIT parameter: -aL)", metavar = "double"), + make_option(opt_str = c("-E", "--alignment_coverage_longer_n"), default = 99999999, help = "There can not be more than x unaligned nucleotides on the longer sequence. Default = %default (CD-HIT parameter: -AL)", metavar = "integer"), + make_option(opt_str = c("-f", "--alignment_coverage_shorter_p"), default = 0.0, help = "Alignment must cover x percent of shorter sequence. Default = %default (CD-HIT parameter: -aS)", metavar = "double"), + make_option(opt_str = c("-F", "--alignment_coverage_shorter_n"), default = 99999999, help = "There can not be more than x unaligned nucleotides on the longer sequence. Default = %default (CD-HIT parameter: -AS)", metavar = "integer"), + make_option(opt_str = c("-w", "--max_unmatched_longer_p"), default = 1.0, help = "Maximum unmatched percentage on longer sequence (excludes leading tailing gap). Default = %default (CD-HIT parameter: -uL)", metavar = "double"), + make_option(opt_str = c("-W", "--max_unmatched_shorter_p"), default = 1.0, help = "Maximum unmatched percentage on shorter sequence (excludes leading tailing gap). Default = %default (CD-HIT parameter: -uS)", metavar = "double"), make_option(opt_str = c("-U", "--max_unmatched_both_n"), default = 99999999, help = "Maximum unmatched nucleotied on both sequences (excludes leading tailing gap). Default = %default (CD-HIT parameter)", metavar = "integer"), make_option(opt_str = c("-g", "--fast_cluster"), default = 1, help = "Cluster sequence in first cluster that meets threshold = 0 (fast). Or cluster in best Cluster = 1 (accurate). Default = %default (CD-HIT parameter)", metavar = "integer"), make_option(opt_str = c("-r", "--strand"), default = 0, help = "Align +/+ & +/- (= 1). Or align only +/+ (= 0). Default = %default (CD-HIT parameter)", metavar = "integer"), @@ -29,7 +29,7 @@ option_list <- list( make_option(opt_str = c("--mismatch"), default = -2, help = "Mismatch score. Default = %default (CD-HIT parameter)", metavar = "integer"), make_option(opt_str = c("--gap"), default = -6, help = "Gap score. Default = %default (CD-HIT parameter)", metavar = "integer"), make_option(opt_str = c("--gap_ext"), default = -1, help = "Gap extension score. Default = %default (CD-HIT parameter)", metavar = "integer"), - make_option(opt_str = c("-sc", "--sort_cluster_by_size"), default = 1, help = "Either sort cluster by decreasing length (= 0) or by decreasing size (= 1). Default = %default (CD-HIT parameter)", metavar = "integer") + make_option(opt_str = c("-x", "--sort_cluster_by_size"), default = 1, help = "Either sort cluster by decreasing length (= 0) or by decreasing size (= 1). Default = %default (CD-HIT parameter: -sc)", metavar = "integer") ) opt_parser <- OptionParser(option_list = option_list, From cd53d3c4dc58f4eaadfdbe556dbb8532c2ea46af Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 13:56:20 +0100 Subject: [PATCH 145/206] fixed ambiguous flags + nameing bug in find_kmer_regions --- bin/reduce_bed.R | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/bin/reduce_bed.R b/bin/reduce_bed.R index efe5bf5..2f8e8a2 100644 --- a/bin/reduce_bed.R +++ b/bin/reduce_bed.R @@ -9,8 +9,8 @@ option_list <- list( make_option(opt_str = c("-t", "--threads"), default = 1, help = "Number of threads to use. Use 0 for all available cores. Default = %default", metavar = "integer"), make_option(opt_str = c("-c", "--clean"), default = TRUE, help = "Delete all temporary files. Default = %default", metavar = "logical"), make_option(opt_str = c("-s", "--min_seq_length"), default = NULL, help = "Remove sequences below this length. Defaults to the maximum value of motif and kmer and can not be lower.", metavar = "integer", type = "integer"), - make_option(opt_str = c("-ko", "--minoverlap_kmer"), default = NULL, help = "Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges. Can not be greater than kmer length. Default = kmer - 1", metavar = "integer", type = "integer"), - make_option(opt_str = c("-mo", "--minoverlap_motif"), default = NULL, help = "Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation. Can not be greater than motif and kmer length. Default = ceiling(motif / 2)", metavar = "integer", type = "integer"), + make_option(opt_str = c("-n", "--minoverlap_kmer"), default = NULL, help = "Minimum required overlap between kmer to merge kmer. Used to create reduced sequence ranges. Can not be greater than kmer length. Default = kmer - 1", metavar = "integer", type = "integer"), + make_option(opt_str = c("-v", "--minoverlap_motif"), default = NULL, help = "Minimum required overlap between motif and kmer to consider kmer significant. Used for kmer cutoff calculation. Can not be greater than motif and kmer length. Default = ceiling(motif / 2)", metavar = "integer", type = "integer"), make_option(opt_str = c("-f", "--motif_occurence"), default = 1, help = "Number of motifs per sequence any value above 0. Default = %default.", metavar = "double") ) @@ -196,6 +196,7 @@ find_kmer_regions <- function(bed, kmer_counts, minoverlap = 1 , threads = NULL) seq_ranges <- pbapply::pblapply(seq_len(nrow(bed)), cl = threads, function(x) { seq <- bed[x][[ncol(bed)]] + name <- bed[x][[4]] #### locate ranges ranges <- data.table::data.table(do.call(rbind, stringi::stri_locate_all_fixed(seq, pattern = kmer_counts[[1]]))) @@ -203,7 +204,7 @@ find_kmer_regions <- function(bed, kmer_counts, minoverlap = 1 , threads = NULL) ranges <- na.omit(ranges, cols = c("start", "end")) if (nrow(ranges) < 1) { - return(data.table::data.table(start = NA, end = NA, width = NA)) + return(data.table::data.table(start = NA, end = NA, width = NA, name = name)) } # add kmer sequences @@ -237,14 +238,13 @@ find_kmer_regions <- function(bed, kmer_counts, minoverlap = 1 , threads = NULL) # reduce selected ranges reduced_ranges <- IRanges::reduce(reduced_ranges[selected_ranges]) - reduced_ranges <- data.table::as.data.table(reduced_ranges) + reduced_ranges <- data.table::as.data.table(reduced_ranges)[, name := name] return(reduced_ranges) }) # create ranges table conserved_regions_table <- data.table::rbindlist(seq_ranges) - conserved_regions_table[, name := bed[[4]]] return(conserved_regions_table) } From e68a89dcabd401a8108c86be987433b55acaebce Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 13:57:27 +0100 Subject: [PATCH 146/206] removed param threads --- config/cluster.config | 2 -- 1 file changed, 2 deletions(-) diff --git a/config/cluster.config b/config/cluster.config index 2a1828c..1b444e2 100644 --- a/config/cluster.config +++ b/config/cluster.config @@ -1,6 +1,4 @@ params{ - threads=1 - //reduce_bed kmer=10 aprox_motif_len=10 From 92baa4d08228b23ff96972a0cbc9a54c3c92a59d Mon Sep 17 00:00:00 2001 From: Schultheis Date: Thu, 6 Dec 2018 14:32:46 +0100 Subject: [PATCH 147/206] added parameter to list and description --- pipeline.nf | 33 ++++++++++++++++++++++++++------- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 0ebc301..f12edad 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -23,10 +23,19 @@ params.config="" params.max_size_fp=100 //clustering - params.sequence_coverage=8 - - params.kmer=10 - params.aprox_motif_len=10 + //reduce_bed + params.kmer=10 + params.aprox_motif_len=10 + params.motif_occurence=1 + params.min_seq_length=10 + + //cdhit_wrapper + params.global=0 + params.identity=0.8 + params.sequence_coverage=8 + params.memory=800 + params.throw_away_seq=9 + params.strand=0 //motif_estimation //bed_to_clustered_fasta @@ -67,9 +76,19 @@ Optional arguments: --max_size_fp INT (Default: 100) Clustering: - --sequence_coverage INT (Default: 8) - --kmer INT (Default: 10) - --aprox_motif_len INT (Default: 10) + Sequence preparation/ reduction: + --kmer INT Kmer length (Default: 10) + --aprox_motif_len INT Motif length (Default: 10) + --motif_occurence FLOAT Percentage of motifs over all sequences. Use 1 (Default) to assume every sequence contains a motif. + --min_seq_length INT Remove all sequences below this value. (Default: 10) + + Clustering: + --global INT Global (=1) or local (=0) alignment. (Default: 0) + --identity FLOAT Identity threshold. (Default: 0.8) + --sequence_coverage INT Minimum aligned nucleotides on both sequences. (Default: 8) + --memory INT Memory limit in MB. 0 for unlimited. (Default: 800) + --throw_away_seq INT Remove all sequences equal or below this length before clustering. (Default: 9) + --strand INT Align +/+ & +/- (= 1). Or align only +/+ (= 0). (Default: 0) Motif estimation: --motif_min_len INT Minimum length of Motif (Default: 8) From 9b09e5a6e736a1fd5c178af81afad714fa784575 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 6 Dec 2018 08:40:02 -0500 Subject: [PATCH 148/206] minor changes --- masterenv.yml | 5 +---- nextflow.config | 19 ++++++++++--------- pipeline.nf | 32 ++++++++++++++++++++++++-------- 3 files changed, 35 insertions(+), 21 deletions(-) diff --git a/masterenv.yml b/masterenv.yml index b25f948..a977fe1 100644 --- a/masterenv.yml +++ b/masterenv.yml @@ -5,11 +5,9 @@ channels: - conda-forge dependencies: - bedtools - - python - r-seqinr - numpy - pybigWig - #clustering - cd-hit - jellyfish - r-base>=3.5.1 @@ -20,11 +18,10 @@ dependencies: - r-stringr - r-optparse - bioconductor-iranges -# - snakemake - meme - moods - biopython - pybedtools - matplotlib - - seaborn + - seaborn \ No newline at end of file diff --git a/nextflow.config b/nextflow.config index a3c06eb..47dc610 100644 --- a/nextflow.config +++ b/nextflow.config @@ -1,14 +1,15 @@ +wd = "/mnt/agnerds/Rene.Wiegandt/10_Master/masterJLU2018" createTimeout = 60 params.threads=1 //Parameter for for scripts! Not for nextflow processes. -params.config="${workflow.projectDir}/config/uropa.config" - -includeConfig '$workflow.projectDir/config/peak_calling.config' -includeConfig '$workflow.projectDir/config/filter_unknown_motifs.config' -includeConfig '$workflow.projectDir/config/cluster.config' -includeConfig '$workflow.projectDir/config/motif_estimation.config' -includeConfig '$workflow.projectDir/config/create_gtf.config' +params.config="${wd}/config/uropa.config" env { - path_bin = $workflow.projectDir/bin - path_env = $workflow.projectDir/masterenv.yml + path_bin = "${wd}/bin" + path_env = "${wd}/masterenv.yml" } + +includeConfig "${wd}/config/peak_calling.config" +includeConfig "${wd}/config/filter_unknown_motifs.config" +includeConfig "${wd}/config/cluster.config" +includeConfig "${wd}/config/motif_estimation.config" +includeConfig "${wd}/config/create_gtf.config" diff --git a/pipeline.nf b/pipeline.nf index e694ba0..13c6718 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -86,9 +86,10 @@ All arguments can be set in the configuration files. } -bigwig_input.combine(bed_input).set{footprint_in} - +bigwig_input.combine(bed_input).into {footprint_in} +/* +*/ process footprint_extraction { conda "${path_env}" @@ -103,12 +104,16 @@ process footprint_extraction { set name, file ('*.bed') into bed_for_overlap_with_TFBS script: + print(bigWig) """ python ${path_bin}/call_peaks.py --bigwig ${bigWig} --bed ${bed} --output_file ${name}_called_peaks.bed --window_length ${params.window_length} --step ${params.step} --percentage ${params.percentage} """ } //Abfrage ob ausgeführt werden muss. +/* + +*/ process extract_known_TFBS { conda "${path_env}" @@ -129,6 +134,8 @@ process extract_known_TFBS { bed_for_overlap_with_TFBS.combine(known_TFBS_for_overlap).combine(fa_overlap_2).set {for_overlap} +/* +*/ process overlap_with_known_TFBS { conda "${path_env}" @@ -146,6 +153,8 @@ process overlap_with_known_TFBS { } +/* +*/ process reduce_bed { conda "${path_env}" @@ -162,6 +171,8 @@ process reduce_bed { } +/* +*/ process clustering { conda "${path_env}" @@ -178,7 +189,9 @@ process clustering { } -// Converting BED-File to one FASTA-File per cluster +/* +Converting BED-File to one FASTA-File per cluster +*/ process bed_to_clustered_fasta { conda "${path_env}" @@ -202,8 +215,10 @@ process bed_to_clustered_fasta { fasta_for_glam2 = fasta_for_glam2.flatten().map {it -> [it.simpleName, it]} -//Running GLAM2 on FASTA-files. -//Generating Motifs through alignment and scoring best local matches. +/* +Running GLAM2 on FASTA-files. +Generating Motifs through alignment and scoring best local matches. +*/ process glam2 { conda "${path_env}" @@ -221,9 +236,10 @@ process glam2 { """ } - -//Running Tomtom on meme-files generated by GLAM2. -//Tomtom searches motifs in databases. +/* +Running Tomtom on meme-files generated by GLAM2. +Tomtom searches motifs in databases. +*/ process tomtom { conda "${path_env}" From a8377ce8dce9c8b5b89524ff1d089bd800574f90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 6 Dec 2018 08:41:33 -0500 Subject: [PATCH 149/206] removed debug code --- pipeline.nf | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index ff94d9d..00c23a1 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -81,7 +81,7 @@ Optional arguments: --aprox_motif_len INT Motif length (Default: 10) --motif_occurence FLOAT Percentage of motifs over all sequences. Use 1 (Default) to assume every sequence contains a motif. --min_seq_length INT Remove all sequences below this value. (Default: 10) - + Clustering: --global INT Global (=1) or local (=0) alignment. (Default: 0) --identity FLOAT Identity threshold. (Default: 0.8) @@ -123,7 +123,6 @@ process footprint_extraction { set name, file ('*.bed') into bed_for_overlap_with_TFBS script: - print(bigWig) """ python ${path_bin}/call_peaks.py --bigwig ${bigWig} --bed ${bed} --output_file ${name}_called_peaks.bed --window_length ${params.window_length} --step ${params.step} --percentage ${params.percentage} """ From 224b6eef2e8f00e47a3db230d6ef67606de97222 Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Thu, 6 Dec 2018 14:41:38 +0100 Subject: [PATCH 150/206] bugfixing --- bin/compareBed.sh | 127 ++++++++++++++++++++++++++++++++++++++-------- bin/maxScore.R | 7 +-- bin/merge.R | 23 ++++++--- 3 files changed, 127 insertions(+), 30 deletions(-) diff --git a/bin/compareBed.sh b/bin/compareBed.sh index bcf52fb..22c288a 100644 --- a/bin/compareBed.sh +++ b/bin/compareBed.sh @@ -100,19 +100,20 @@ then echo "Required arguments are data and motifs, both in bed-format, and the fasta genome sequences." echo "If a parameter is chosen, a value must be provided or an error will occur." echo "--------------------" - echo "usage: compareBed.sh --data \ --motifs \ --fasta \ \[optional_parameter \\] ..." + echo "usage: compareBed.sh --data --motifs --fasta [optional_parameter ] ..." echo "--------------------" echo " required parameter:" echo " -d --data the path to the .bed file of the footprints" - echo " -m --motifs the path to the .bed file of the scanned motifs" + echo " -m --motifs Either the path to the directory where the .bed files of the scanned motifs are stored" + echo " Or a comma seperated list of files, e.g.: path1/file1,path2/file2,path3/file3" echo " -f --fasta the path to the .fasta file of genome" echo " " echo " optional parameter:" echo " -w --workdir the path to directory where temporary files will be created" echo " default is a new directory that is created in the current directory" - echo " -min --min minimum size of footprints\; default is 10" - echo " -max --max maximum size of footprints\; default is 60" - echo " -o --output output path/file \; default dir is workdir and filename is newFootprints.bed and newFootprints.bed.fasta" + echo " -min --min minimum size of footprints; default is 10" + echo " -max --max maximum size of footprints; default is 80" + echo " -o --output output path/file ; default dir is workdir and filename is newMotifs.bed and newMotifs.bed.fasta" echo " -h --help shows this help message" exit 0 fi @@ -137,17 +138,17 @@ fi if [ $wo == false ] then - if [ ! -d workdir1337 ] - then - mkdir workdir1337 - fi + #if [ ! -d workdir1337 ] + #then + # mkdir workdir1337 + #fi wo=true - workdir="workdir1337" + workdir="." fi if [ $ou == false ] then - output="newFootprints.bed" + output=${workdir}/"newMotifs.bed" ou=true fi @@ -159,25 +160,109 @@ fi if [ $ma == false ] then - max=60 + max=80 ma=true fi + +if [ ! -d $workdir ] +then + mkdir $workdir +fi + #1. first filter. no overlap vs. overlap -bedtools intersect -v -a $data -b $motifs > "$workdir"/pass1Tr.bed -bedtools intersect -wa -a $data -b $motifs > "$workdir"/pass1Fa.bed +echo get sequences with no overlap +cat $data > "$workdir"/pass1Tr.bed +help=true + +if [ -d "$motifs" ] +then +for i in "$motifs"/*.bed +do + if [ $help == true ] + then + help=false + bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed + else + help=true + bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed + fi + echo $i +done +else +declare -a motiffiles=(`echo $motifs | sed 's/,/ /g'`) +for i in ${motiffiles[@]} +do + if [ $help == true ] + then + help=false + bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed + else + help=true + bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed + fi + echo $i +done +fi +if [ $help == false ] +then + cat "$workdir"/pass1TrHelp.bed > "$workdir"/pass1Tr.bed +fi +echo get overlapping sequences +bedtools intersect -v -a $data -b "$workdir"/pass1Tr.bed > "$workdir"/pass1Fa.bed +cat "$workdir"/pass1Fa.bed | wc -l + +echo calc maxScore #2. compute absolut maxscore position -Rscript --vanilla maxScore.R "$workdir"/pass1Fa.bed +Rscript --vanilla /bin/maxScore.R "$workdir"/pass1Fa.bed + +#3 subtract overlapping regions for additional motifs +echo "also get subsequences with no overlap of overlapping sequences" +help=true -#3. subtract overlapping regions for additional motifs -bedtools subtract -a "$workdir"/pass1Fa.bed -b $motifs > "$workdir"/pass2Tr.bed +if [ -d $"motifs" ] +then +for i in "$motifs"/*.bed +do + if [ $help == true ] + then + help=false + bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed + else + help=true + bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed + fi + echo $i +done +else +for i in ${motiffiles[@]} +do + if [ $help == true ] + then + help=false + bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed + else + help=true + bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed + fi + echo $i +done +fi + + +if [ $help == false ] +then + cat "$workdir"/pass1FaHelp.bed > "$workdir"/pass2Tr.bed +else + cat "$workdir"/pass1Fa.bed > "$workdir"/pass2Tr.bed +fi #4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition -Rscript --vanilla merge.R $min $max "$workdir" +Rscript --vanilla /bin/merge.R $min $max "$workdir" $data #5. add fasta sequences to bed and create fasta file -bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$workdir"/"$output" -bedtools getfasta -name -fi $fasta -bed "$workdir"/"$output" -fo "$workdir"/"$output".fasta +bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$output" +bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta #6 clean up -rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed \ No newline at end of file +#rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed \ No newline at end of file diff --git a/bin/maxScore.R b/bin/maxScore.R index 4ea545b..4347af2 100644 --- a/bin/maxScore.R +++ b/bin/maxScore.R @@ -1,9 +1,10 @@ -#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +#!/bin/Rscript +library(data.table) args = commandArgs(TRUE) file = args[1] -tab = read.table(file, header=FALSE) -colnames(tab) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +tab = fread(file) +colnames(tab) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "info") tab$maxpos = tab$start + tab$maxpos write.table(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') diff --git a/bin/merge.R b/bin/merge.R index bbe3c9a..728c9cf 100644 --- a/bin/merge.R +++ b/bin/merge.R @@ -1,12 +1,13 @@ -#!/home/jhamp/.conda/envs/tfbs/bin/Rscript +#!/bin/Rscript +library(data.table) args=commandArgs(TRUE) min=as.numeric(args[1]) max=as.numeric(args[2]) folder=args[3] -splitted = read.table(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) -colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") -p1 = read.table(paste(folder, "/pass1Tr.bed", sep=''), header=FALSE) -colnames(p1) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +splitted = fread(paste(folder, "/pass2Tr.bed", sep='')) +colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "info") +p1 = fread(paste(folder, "/pass1Tr.bed", sep='')) +colnames(p1) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "info") p1$maxpos = p1$start + p1$maxpos splitted=rbind(splitted, p1) @@ -19,5 +20,15 @@ splitted$length=splitted$stop - splitted$start splitted=cbind(splitted, containsMaxpos=0) splitted$containsMaxpos[intersect(which(splitted$start <= splitted$maxpos), which(splitted$stop > splitted$maxpos))] = 1 splitted$maxpos = splitted$maxpos - splitted$start -write.table(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') +fwrite(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') +before = fread(args[4], header=FALSE) + +sumb=sum(before$V3-before$V2) +suma=sum(splitted$length) +difference = formatC(sumb/suma, digits=4) +loss = formatC(1 - suma/sumb, digits=2) +lengthb = formatC(mean(before$V3-before$V2), digits=4) +lengtha = formatC(mean(splitted$length), digits=4) +stats=data.frame(sum_nt_input=sumb, sum_nt_filtered=suma, factor=difference, loss=loss, mean_length_input=lengthb, mean_length_filtered=lengtha) +write.table(stats, "../FilterMotifs.stats", row.names=FALSE, quote=FALSE, sep='\t') From 0eb48b5b316304611c643adaec188450deabfa3e Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 6 Dec 2018 14:47:32 +0100 Subject: [PATCH 151/206] Update README.md --- README.md | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 994029a..da59386 100644 --- a/README.md +++ b/README.md @@ -58,10 +58,19 @@ Optional arguments: --min_size_fp INT (Default: 10) --max_size_fp INT (Default: 100) + Cluster: + Sequence preparation/ reduction: + --kmer INT Kmer length (Default: 10) + --aprox_motif_len INT Motif length (Default: 10) + --motif_occurence FLOAT Percentage of motifs over all sequences. Use 1 (Default) to assume every sequence contains a motif. + --min_seq_length INT Remove all sequences below this value. (Default: 10) Clustering: - --sequence_coverage INT (Default: 8) - --kmer INT (Default: 10) - --aprox_motif_len INT (Default: 10) + --global INT Global (=1) or local (=0) alignment. (Default: 0) + --identity FLOAT Identity threshold. (Default: 0.8) + --sequence_coverage INT Minimum aligned nucleotides on both sequences. (Default: 8) + --memory INT Memory limit in MB. 0 for unlimited. (Default: 800) + --throw_away_seq INT Remove all sequences equal or below this length before clustering. (Default: 9) + --strand INT Align +/+ & +/- (= 1). Or align only +/+ (= 0). (Default: 0) Motif estimation: --motif_min_len INT Minimum length of Motif (Default: 8) From 119b876fff76f8bee8377a8a8c4c0ef96461b392 Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Thu, 6 Dec 2018 15:12:06 +0100 Subject: [PATCH 152/206] fixing --- bin/compareBed.sh | 90 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 89 insertions(+), 1 deletion(-) diff --git a/bin/compareBed.sh b/bin/compareBed.sh index 22c288a..f594b6a 100644 --- a/bin/compareBed.sh +++ b/bin/compareBed.sh @@ -113,7 +113,11 @@ then echo " default is a new directory that is created in the current directory" echo " -min --min minimum size of footprints; default is 10" echo " -max --max maximum size of footprints; default is 80" +<<<<<<< HEAD echo " -o --output output path/file ; default dir is workdir and filename is newMotifs.bed and newMotifs.bed.fasta" +======= + echo " -o --output output path/file ; default dir is workdir and filename is newFootprints.bed and newFootprints.bed.fasta" +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e echo " -h --help shows this help message" exit 0 fi @@ -148,7 +152,11 @@ fi if [ $ou == false ] then +<<<<<<< HEAD output=${workdir}/"newMotifs.bed" +======= + output=${workdir}/"newFootprints.bed" +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e ou=true fi @@ -173,6 +181,7 @@ fi echo get sequences with no overlap cat $data > "$workdir"/pass1Tr.bed help=true +<<<<<<< HEAD if [ -d "$motifs" ] then @@ -204,6 +213,39 @@ do done fi +======= + +if [ -d $"motifs" ] +then +for i in "$motifs"/*.bed +do + if [ $help == true ] + then + help=false + bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed + else + help=true + bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed + fi + echo $i +done +else +declare -a motiffiles=(`echo $motifs | sed 's/,/ /g'`) +for i in ${motiffiles[@]} +do + if [ $help == true ] + then + help=false + bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed + else + help=true + bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed + fi + echo $i +done +fi + +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e if [ $help == false ] then cat "$workdir"/pass1TrHelp.bed > "$workdir"/pass1Tr.bed @@ -214,11 +256,48 @@ cat "$workdir"/pass1Fa.bed | wc -l echo calc maxScore #2. compute absolut maxscore position +<<<<<<< HEAD Rscript --vanilla /bin/maxScore.R "$workdir"/pass1Fa.bed +======= +Rscript --vanilla /mnt/agnerds/Jannik.Hamp/maxScore.R "$workdir"/pass1Fa.bed +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e #3 subtract overlapping regions for additional motifs echo "also get subsequences with no overlap of overlapping sequences" help=true +<<<<<<< HEAD + +if [ -d $"motifs" ] +then +for i in "$motifs"/*.bed +do + if [ $help == true ] + then + help=false + bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed + else + help=true + bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed + fi + echo $i +done +else +for i in ${motiffiles[@]} +do + if [ $help == true ] + then + help=false + bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed + else + help=true + bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed + fi + echo $i +done +fi + + +======= if [ -d $"motifs" ] then @@ -250,6 +329,7 @@ done fi +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e if [ $help == false ] then cat "$workdir"/pass1FaHelp.bed > "$workdir"/pass2Tr.bed @@ -258,11 +338,19 @@ else fi #4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition +<<<<<<< HEAD Rscript --vanilla /bin/merge.R $min $max "$workdir" $data +======= +Rscript --vanilla /mnt/agnerds/Jannik.Hamp/merge.R $min $max "$workdir" +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e #5. add fasta sequences to bed and create fasta file bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$output" bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta #6 clean up -#rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed \ No newline at end of file +<<<<<<< HEAD +#rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed +======= +rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e From b8f435fb5bd8fad7aa54e9d45fe0bd0dca77427e Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Thu, 6 Dec 2018 15:12:24 +0100 Subject: [PATCH 153/206] fixing --- bin/maxScore.R | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/bin/maxScore.R b/bin/maxScore.R index 4347af2..c0d4cb1 100644 --- a/bin/maxScore.R +++ b/bin/maxScore.R @@ -3,8 +3,13 @@ library(data.table) args = commandArgs(TRUE) file = args[1] +<<<<<<< HEAD tab = fread(file) colnames(tab) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "info") +======= +tab = fread(file, header=FALSE) +colnames(tab) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e tab$maxpos = tab$start + tab$maxpos -write.table(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') +fwrite(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') From df70d2929424ed9ffd3de7c95d9ee85b319ca658 Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Thu, 6 Dec 2018 15:12:37 +0100 Subject: [PATCH 154/206] fixing --- bin/merge.R | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/bin/merge.R b/bin/merge.R index 728c9cf..b302d1f 100644 --- a/bin/merge.R +++ b/bin/merge.R @@ -4,10 +4,17 @@ args=commandArgs(TRUE) min=as.numeric(args[1]) max=as.numeric(args[2]) folder=args[3] +<<<<<<< HEAD splitted = fread(paste(folder, "/pass2Tr.bed", sep='')) colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "info") p1 = fread(paste(folder, "/pass1Tr.bed", sep='')) colnames(p1) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "info") +======= +splitted = fread(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) +colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") +p1 = fread(paste(folder, "/pass1Tr.bed", sep=''), header=TRUE) +colnames(p1) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e p1$maxpos = p1$start + p1$maxpos splitted=rbind(splitted, p1) @@ -21,6 +28,7 @@ splitted=cbind(splitted, containsMaxpos=0) splitted$containsMaxpos[intersect(which(splitted$start <= splitted$maxpos), which(splitted$stop > splitted$maxpos))] = 1 splitted$maxpos = splitted$maxpos - splitted$start fwrite(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') +<<<<<<< HEAD before = fread(args[4], header=FALSE) @@ -32,3 +40,5 @@ lengthb = formatC(mean(before$V3-before$V2), digits=4) lengtha = formatC(mean(splitted$length), digits=4) stats=data.frame(sum_nt_input=sumb, sum_nt_filtered=suma, factor=difference, loss=loss, mean_length_input=lengthb, mean_length_filtered=lengtha) write.table(stats, "../FilterMotifs.stats", row.names=FALSE, quote=FALSE, sep='\t') +======= +>>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e From ff3570e8c9227d9eeac05ccde9acc440fe022057 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 6 Dec 2018 15:20:01 +0100 Subject: [PATCH 155/206] fixed failed merge --- bin/merge.R | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/bin/merge.R b/bin/merge.R index b302d1f..c2015aa 100644 --- a/bin/merge.R +++ b/bin/merge.R @@ -4,17 +4,12 @@ args=commandArgs(TRUE) min=as.numeric(args[1]) max=as.numeric(args[2]) folder=args[3] -<<<<<<< HEAD + splitted = fread(paste(folder, "/pass2Tr.bed", sep='')) colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "info") p1 = fread(paste(folder, "/pass1Tr.bed", sep='')) colnames(p1) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "info") -======= -splitted = fread(paste(folder, "/pass2Tr.bed", sep=''), header=FALSE) -colnames(splitted) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") -p1 = fread(paste(folder, "/pass1Tr.bed", sep=''), header=TRUE) -colnames(p1) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "bonus_info") ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e + p1$maxpos = p1$start + p1$maxpos splitted=rbind(splitted, p1) @@ -28,7 +23,6 @@ splitted=cbind(splitted, containsMaxpos=0) splitted$containsMaxpos[intersect(which(splitted$start <= splitted$maxpos), which(splitted$stop > splitted$maxpos))] = 1 splitted$maxpos = splitted$maxpos - splitted$start fwrite(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') -<<<<<<< HEAD before = fread(args[4], header=FALSE) @@ -40,5 +34,4 @@ lengthb = formatC(mean(before$V3-before$V2), digits=4) lengtha = formatC(mean(splitted$length), digits=4) stats=data.frame(sum_nt_input=sumb, sum_nt_filtered=suma, factor=difference, loss=loss, mean_length_input=lengthb, mean_length_filtered=lengtha) write.table(stats, "../FilterMotifs.stats", row.names=FALSE, quote=FALSE, sep='\t') -======= ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e + From 4988fabe476b84fc5de2ca98074b6d7cb48f118d Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 6 Dec 2018 15:20:36 +0100 Subject: [PATCH 156/206] fixed failed merge --- bin/maxScore.R | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/bin/maxScore.R b/bin/maxScore.R index c0d4cb1..6b90984 100644 --- a/bin/maxScore.R +++ b/bin/maxScore.R @@ -3,13 +3,9 @@ library(data.table) args = commandArgs(TRUE) file = args[1] -<<<<<<< HEAD tab = fread(file) colnames(tab) = c("chromosome", "start", "stop", "id", "score", "length", "maxpos", "info") -======= -tab = fread(file, header=FALSE) -colnames(tab) = c("chromosome", "start", "stop", "id", "score", "maxpos", "length") ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e + tab$maxpos = tab$start + tab$maxpos fwrite(tab, file, row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') From db937a17f1af548dc0a1be96b9bb3a3086e88326 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 6 Dec 2018 15:25:35 +0100 Subject: [PATCH 157/206] fixed failed merge --- bin/compareBed.sh | 93 ++--------------------------------------------- 1 file changed, 4 insertions(+), 89 deletions(-) diff --git a/bin/compareBed.sh b/bin/compareBed.sh index f594b6a..b476a0d 100644 --- a/bin/compareBed.sh +++ b/bin/compareBed.sh @@ -113,11 +113,7 @@ then echo " default is a new directory that is created in the current directory" echo " -min --min minimum size of footprints; default is 10" echo " -max --max maximum size of footprints; default is 80" -<<<<<<< HEAD echo " -o --output output path/file ; default dir is workdir and filename is newMotifs.bed and newMotifs.bed.fasta" -======= - echo " -o --output output path/file ; default dir is workdir and filename is newFootprints.bed and newFootprints.bed.fasta" ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e echo " -h --help shows this help message" exit 0 fi @@ -152,11 +148,7 @@ fi if [ $ou == false ] then -<<<<<<< HEAD output=${workdir}/"newMotifs.bed" -======= - output=${workdir}/"newFootprints.bed" ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e ou=true fi @@ -181,7 +173,6 @@ fi echo get sequences with no overlap cat $data > "$workdir"/pass1Tr.bed help=true -<<<<<<< HEAD if [ -d "$motifs" ] then @@ -213,39 +204,6 @@ do done fi -======= - -if [ -d $"motifs" ] -then -for i in "$motifs"/*.bed -do - if [ $help == true ] - then - help=false - bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed - else - help=true - bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed - fi - echo $i -done -else -declare -a motiffiles=(`echo $motifs | sed 's/,/ /g'`) -for i in ${motiffiles[@]} -do - if [ $help == true ] - then - help=false - bedtools intersect -v -a "$workdir"/pass1Tr.bed -b $i > "$workdir"/pass1TrHelp.bed - else - help=true - bedtools intersect -v -a "$workdir"/pass1TrHelp.bed -b $i > "$workdir"/pass1Tr.bed - fi - echo $i -done -fi - ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e if [ $help == false ] then cat "$workdir"/pass1TrHelp.bed > "$workdir"/pass1Tr.bed @@ -256,16 +214,12 @@ cat "$workdir"/pass1Fa.bed | wc -l echo calc maxScore #2. compute absolut maxscore position -<<<<<<< HEAD + Rscript --vanilla /bin/maxScore.R "$workdir"/pass1Fa.bed -======= -Rscript --vanilla /mnt/agnerds/Jannik.Hamp/maxScore.R "$workdir"/pass1Fa.bed ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e #3 subtract overlapping regions for additional motifs echo "also get subsequences with no overlap of overlapping sequences" help=true -<<<<<<< HEAD if [ -d $"motifs" ] then @@ -296,40 +250,6 @@ do done fi - -======= - -if [ -d $"motifs" ] -then -for i in "$motifs"/*.bed -do - if [ $help == true ] - then - help=false - bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed - else - help=true - bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed - fi - echo $i -done -else -for i in ${motiffiles[@]} -do - if [ $help == true ] - then - help=false - bedtools subtract -a "$workdir"/pass1Fa.bed -b $i > "$workdir"/pass1FaHelp.bed - else - help=true - bedtools subtract -a "$workdir"/pass1FaHelp.bed -b $i > "$workdir"/pass1Fa.bed - fi - echo $i -done -fi - - ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e if [ $help == false ] then cat "$workdir"/pass1FaHelp.bed > "$workdir"/pass2Tr.bed @@ -338,19 +258,14 @@ else fi #4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition -<<<<<<< HEAD + Rscript --vanilla /bin/merge.R $min $max "$workdir" $data -======= -Rscript --vanilla /mnt/agnerds/Jannik.Hamp/merge.R $min $max "$workdir" ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e + #5. add fasta sequences to bed and create fasta file bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$output" bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta #6 clean up -<<<<<<< HEAD #rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed -======= -rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed ->>>>>>> 0eb48b5b316304611c643adaec188450deabfa3e + From 9c3f325f196a702183ae5a36caf7a9f182b0160d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Thu, 6 Dec 2018 10:08:16 -0500 Subject: [PATCH 158/206] minor fix --- pipeline.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pipeline.nf b/pipeline.nf index 00c23a1..000230f 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -105,7 +105,7 @@ All arguments can be set in the configuration files. } -bigwig_input.combine(bed_input).into {footprint_in} +bigwig_input.combine(bed_input).set{footprint_in} /* */ From cc88f6c11a7e0d0eae583124301ef5faec1f3e99 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Fri, 7 Dec 2018 00:23:10 +0100 Subject: [PATCH 159/206] added process merge_meme --- pipeline.nf | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/pipeline.nf b/pipeline.nf index 00c23a1..656a4ae 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -254,6 +254,26 @@ process glam2 { """ } +/* +process merge_meme { + + input: + val (meme_list) from meme_list + + output: + file ('merged_meme.meme') into merged_meme + + script: + memes = memelist.collect{it.toString().replaceAll(/\/glam2.meme/,"") } + meme_sorted = memes.sort(false) { it.toString().tokenize('_')[-1] as Integer } + meme_sorted_full = meme_sorted.collect {it.toString() + "/glam2.meme"} + meme_list = meme_sorted_full.toString().replaceAll(/\,|\[|\]/,"") + """ + meme2meme ${memelist} > merged_meme.meme + """ +} +*/ + /* Running Tomtom on meme-files generated by GLAM2. Tomtom searches motifs in databases. From deca64b45d163d43b2ec61e8fb75db08c8c2c484 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Sat, 8 Dec 2018 00:40:24 +0100 Subject: [PATCH 160/206] removed typo --- bin/bed_to_fasta.R | 56 +++++++++++++++++++++++----------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/bin/bed_to_fasta.R b/bin/bed_to_fasta.R index 09e3f4f..13bd026 100644 --- a/bin/bed_to_fasta.R +++ b/bin/bed_to_fasta.R @@ -1,28 +1,28 @@ -#!/usr/bin/env Rscript - -# Splitting BED-files depending on their cluster. -# The Sequences of each cluster are writen as an FASTA-file. -# @parameter bedInput BED-file with sequences and cluster-id as column"TEs -# @parameter prefix prefix for filenames -# @parameter min_seq min. number of sequences per cluster - -args = commandArgs(trailingOnly = TRUE) - -bedInput <- args[1] -prefix <- args[2] -min_seq <- args[3] - -bed <- data.table::fread(bedInput, header = FALSE, sep = "\t") - -clusters <- split(bed, bed$V8, sorted = TRUE, flatten = FALSE) # <---- Spalte mit Cluster -discard <- lapply(1:length(clusters), function(i){ - clust <- as.data.frame(clusters[i]) - print(nrow(clust)) - if (nrow(clust) >= as.numeric(min_seq) ) { - sequences <- as.list(clust[[7]]) # <---- Splate mit Sequenz - outfile <- paste0(prefix,"_cluster_",i,".FASTA") - seqinr::write.fasta(sequences = sequences, names = clust[[4]], file.out = outfile, as.string = TRUE) # <---- Spalte mit Name - } else { - print(paste0("Cluster: ",i," is to small")) - } -}) +#!/usr/bin/env Rscript + +# Splitting BED-files depending on their cluster. +# The Sequences of each cluster are writen as an FASTA-file. +# @parameter bedInput BED-file with sequences and cluster-id as columns: Sequence: Column 7; ID:Column 8 +# @parameter prefix prefix for filenames +# @parameter min_seq min. number of sequences per cluster + +args = commandArgs(trailingOnly = TRUE) + +bedInput <- args[1] +prefix <- args[2] +min_seq <- args[3] + +bed <- data.table::fread(bedInput, header = FALSE, sep = "\t") + +clusters <- split(bed, bed$V8, sorted = TRUE, flatten = FALSE) # <---- Spalte mit Cluster +discard <- lapply(1:length(clusters), function(i){ + clust <- as.data.frame(clusters[i]) + print(nrow(clust)) + if (nrow(clust) >= as.numeric(min_seq) ) { + sequences <- as.list(clust[[7]]) # <---- Splate mit Sequenz + outfile <- paste0(prefix,"_cluster_",i,".FASTA") + seqinr::write.fasta(sequences = sequences, names = clust[[4]], file.out = outfile, as.string = TRUE) # <---- Spalte mit Name + } else { + print(paste0("Cluster: ",i," is to small")) + } +}) From b784574791cf8ec8d782d2013b04fb35f66980b2 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Sat, 8 Dec 2018 00:41:38 +0100 Subject: [PATCH 161/206] setting up prozesses for motif clustering --- pipeline.nf | 32 ++++++++++++++++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 656a4ae..9b2e67a 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -220,7 +220,7 @@ process bed_to_clustered_fasta { set name, file (bed) from bed_for_motif_esitmation output: - file ('*.FASTA') into fasta_for_glam2 + file ('*.FASTA') into fasta_for_glam2, fasta_for_motif_cluster script: """ @@ -231,7 +231,8 @@ process bed_to_clustered_fasta { //flatten list and adding name of file to channel value fasta_for_glam2 = fasta_for_glam2.flatten().map {it -> [it.simpleName, it]} - +//combine fasta files in one list +fasta_for_motif_cluster = fasta_for_motif_cluster.toList() /* Running GLAM2 on FASTA-files. @@ -255,6 +256,8 @@ process glam2 { } /* +Combining alle MEME-files to one big MEME-file. +The paths are sorted numerically depending on the cluster number. process merge_meme { input: @@ -272,6 +275,31 @@ process merge_meme { meme2meme ${memelist} > merged_meme.meme """ } + + +process find_similar_motifs { + + input: + + output: + + script: + """ + """ +} + + +process merge_fasta { + + input: + + + output: + + script: + """ + """ +} */ /* From bff581741f05ddafbda400b763f87e63c40a6e5f Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Sat, 8 Dec 2018 00:42:03 +0100 Subject: [PATCH 162/206] added script merge_similar_clusters.R --- bin/merge_similar_clusters.R | 55 ++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 bin/merge_similar_clusters.R diff --git a/bin/merge_similar_clusters.R b/bin/merge_similar_clusters.R new file mode 100644 index 0000000..f410fa5 --- /dev/null +++ b/bin/merge_similar_clusters.R @@ -0,0 +1,55 @@ +#!/usr/bin/env Rscript + +# Merging FASTA-files, which motifs are similar. +# +# @parameter tsv_in Path to TSV file generated by Tomtom. +# The input for Tomtom is a from all clusters merged meme-file. +# @parameter file_list Numerically sorted whitespace separated list of absolute fasta-file paths +# @parameter min_weight Minimum weight of edge allowed in graph clusters. + + +args = commandArgs(trailingOnly = TRUE) + +tsv_in <- args[1] +file_list <- args[2] +min_weight <- args[3] + +files <- unlist(as.list(strsplit(file_list, " "))) + +# split the string on the character "." in the first to columns and safe the last value each, to get the number of the cluster. +tsv <- data.table::fread(tsv_in, header = TRUE, sep = "\t",colClasses = 'character') +query_cluster <- unlist(lapply(strsplit(tsv[["Query_ID"]],"\\."), function(l){ + tail(l,n=1) +})) +target_cluster <- unlist(lapply(strsplit(tsv[["Target_ID"]],"\\."), function(l){ + tail(l,n=1) +})) + +# create data.table with only the cluster-numbers +sim_not_unique <- data.table::data.table(query_cluster,target_cluster) +# convert from character to numeric values +sim_not_unique[, query_cluster := as.numeric(query_cluster)] +sim_not_unique[, target_cluster := as.numeric(target_cluster)] + +# remove rows if column 1 is idential to column 2 +edgelist <- sim_not_unique[query_cluster != target_cluster] + +# create graph from data.frame +g <- igraph::graph_from_edgelist(as.matrix(g)) +# converting graph to adjacency matrix +adj_matrix <- igraph::get.adjacency(g, names = T) +# generating weighted graph from adjacency matrix +g_adj <- igraph::graph_from_adjacency_matrix(adj_matrix, weighted = T) + +# get subgraphs from graph with edges of weight > min_weight +s1 <- igraph::subgraph.edges(g_adj, igraph::E(g_adj)[igraph::E(g_adj)$weight>min_weight], del=F) + +clust <- clusters(s1) + +# merge FASTA-files depending on the clustered graphs +a <- lapply(seq(from = 1, to = clust$no, by = 1), function(i){ + cl <- as.vector(which(clust$membership %in% c(i))) + fasta_list <- paste(files[cl], collapse = " ") + name <- paste0("Cluster_",i,".fasta") + system(paste("cat",fasta_list,">",name)) +}) From 10a7e8cb84cf101922bebc882ad9add8290dc2f9 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Sat, 8 Dec 2018 22:47:23 +0100 Subject: [PATCH 163/206] added motif clustering --- bin/get_best_motif.py | 9 ++-- bin/merge_similar_clusters.R | 10 +++-- config/motif_estimation.config | 5 +++ pipeline.nf | 78 +++++++++++++++++++++++++++------- 4 files changed, 79 insertions(+), 23 deletions(-) diff --git a/bin/get_best_motif.py b/bin/get_best_motif.py index 770c8a8..0e7334e 100644 --- a/bin/get_best_motif.py +++ b/bin/get_best_motif.py @@ -3,7 +3,8 @@ def parse_arguments(): parser = argparse.ArgumentParser() parser.add_argument("meme", help="Path to meme file") - parser.add_argument("output", help="") + parser.add_argument("output", help="Output file") + parser.add_argument("num", help="Number of motifs parsed from file") args = parser.parse_args() return args @@ -11,13 +12,15 @@ def parse_arguments(): def main(): args = parse_arguments() out = open(args.output, "w+") + number = int(args.num) + 1 + motif = "MOTIF " + str(number) with open(args.meme) as f: for line in f: - if 'MOTIF 2' in line: + if motif in line: break out.write(line) if __name__ == "__main__": import argparse - main() \ No newline at end of file + main() diff --git a/bin/merge_similar_clusters.R b/bin/merge_similar_clusters.R index f410fa5..e72fa03 100644 --- a/bin/merge_similar_clusters.R +++ b/bin/merge_similar_clusters.R @@ -14,7 +14,7 @@ tsv_in <- args[1] file_list <- args[2] min_weight <- args[3] -files <- unlist(as.list(strsplit(file_list, " "))) +files <- unlist(as.list(strsplit(file_list, ","))) # split the string on the character "." in the first to columns and safe the last value each, to get the number of the cluster. tsv <- data.table::fread(tsv_in, header = TRUE, sep = "\t",colClasses = 'character') @@ -35,7 +35,7 @@ sim_not_unique[, target_cluster := as.numeric(target_cluster)] edgelist <- sim_not_unique[query_cluster != target_cluster] # create graph from data.frame -g <- igraph::graph_from_edgelist(as.matrix(g)) +g <- igraph::graph_from_edgelist(as.matrix(edgelist)) # converting graph to adjacency matrix adj_matrix <- igraph::get.adjacency(g, names = T) # generating weighted graph from adjacency matrix @@ -43,8 +43,10 @@ g_adj <- igraph::graph_from_adjacency_matrix(adj_matrix, weighted = T) # get subgraphs from graph with edges of weight > min_weight s1 <- igraph::subgraph.edges(g_adj, igraph::E(g_adj)[igraph::E(g_adj)$weight>min_weight], del=F) - -clust <- clusters(s1) +png('motif_clusters.png') +plot(s1) +dev.off() +clust <- igraph::clusters(s1) # merge FASTA-files depending on the clustered graphs a <- lapply(seq(from = 1, to = clust$no, by = 1), function(i){ diff --git a/config/motif_estimation.config b/config/motif_estimation.config index d280b3e..d12e13c 100644 --- a/config/motif_estimation.config +++ b/config/motif_estimation.config @@ -9,4 +9,9 @@ params { //tomtom tomtom_treshold = 0.01 + + //motif Clustering + edge_weight = 5 + motif_similarity_thresh = 0.00001 + best_motif = 3 } diff --git a/pipeline.nf b/pipeline.nf index 9b2e67a..b1084df 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -49,6 +49,12 @@ params.config="" //tomtom params.tomtom_treshold = 0.01 // threshold for similarity score. + //cluster motifs + params.edge_weight = 5 // Minimum weight of edges in motif-cluster-graph + motif_similarity_thresh = 0.00001 // threshold for motif similarity score + + params.best_motif = 3 // Top n motifs per cluster + //creating_gtf params.organism="homo_sapiens" params.tissue="" @@ -96,6 +102,10 @@ Optional arguments: --interation INT Number of iterations done by glam2. More Interations: better results, higher runtime. (Default: 10000) --tomtom_treshold float Threshold for similarity score. (Default: 0.01) + Moitf clustering: + --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) + --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) + Creating GTF: --organism [homo_sapiens | mus_musculus] --tissues @@ -211,16 +221,18 @@ process clustering { Converting BED-File to one FASTA-File per cluster */ process bed_to_clustered_fasta { - conda "${path_env}" tag{name} - publishDir '/mnt/agnerds/Rene.Wiegandt/10_Master/tmp/', mode: 'copy' input: - set name, file (bed) from bed_for_motif_esitmation + set name, file (bed) from clustered_bed + + when: + params.fasta == false output: - file ('*.FASTA') into fasta_for_glam2, fasta_for_motif_cluster + file ('*.FASTA') into fasta_for_glam2 + file ('*.FASTA') into fasta_for_motif_cluster script: """ @@ -239,7 +251,6 @@ Running GLAM2 on FASTA-files. Generating Motifs through alignment and scoring best local matches. */ process glam2 { - conda "${path_env}" tag{name} @@ -247,7 +258,7 @@ process glam2 { set name, file (fasta) from fasta_for_glam2 output: - set name, file('*.meme') into meme_for_tomtom, meme_for_filter + file("${name}/*.meme") into meme_to_merge script: """ @@ -256,12 +267,13 @@ process glam2 { } /* -Combining alle MEME-files to one big MEME-file. +Combining all MEME-files to one big MEME-file. The paths are sorted numerically depending on the cluster number. +*/ process merge_meme { input: - val (meme_list) from meme_list + val (memelist) from meme_to_merge.toList() output: file ('merged_meme.meme') into merged_meme @@ -272,34 +284,71 @@ process merge_meme { meme_sorted_full = meme_sorted.collect {it.toString() + "/glam2.meme"} meme_list = meme_sorted_full.toString().replaceAll(/\,|\[|\]/,"") """ - meme2meme ${memelist} > merged_meme.meme + meme2meme ${meme_list} > merged_meme.meme """ } - +/* +Running Tomtom on merged meme-files. +Output table has the information which clusters are similar to each other. +*/ process find_similar_motifs { + input: + file (merged_meme) from merged_meme output: + file ('all_to_all.tsv') into motif_similarity script: """ + tomtom ${merged_meme} ${merged_meme} -thresh ${params.motif_similarity_thresh} -text --norc | sed '/^#/ d' | sed '/^\$/d' > all_to_all.tsv """ } +files_for_merge_fasta = motif_similarity.combine(fasta_for_motif_cluster) + + process merge_fasta { input: + set file (motiv_sim), val (fasta_list) from files_for_merge_fasta + + output: + file ('*.fasta') into motif_clustered_fasta_list + file('*.png') + + script: + fa_sorted = fasta_list.sort(false) { it.getBaseName().tokenize('_')[-1] as Integer } + fastalist = fa_sorted.toString().replaceAll(/\s|\[|\]/,"") + """ + Rscript ${path_bin}/merge_similar_clusters.R ${motiv_sim} ${fastalist} ${params.edge_weight} + """ +} + +motif_clustered_fasta_flat = motif_clustered_fasta_list.flatten() + + +process clustered_glam2 { + + input: + file (fasta) from motif_clustered_fasta_flat output: + set name, file ('*.meme') into clustered_meme_for_tomtom + set name, file ('*.meme') into clustered_meme_for_filter + file('*') script: + name = fasta.getBaseName() """ + glam2 n ${fasta} -O . -a ${params.motif_min_len} -b ${params.motif_max_len} -z 5 -n ${params.interation} """ } + */ /* @@ -307,21 +356,18 @@ Running Tomtom on meme-files generated by GLAM2. Tomtom searches motifs in databases. */ process tomtom { - conda "${path_env}" tag{name} - publishDir '/mnt/agnerds/Rene.Wiegandt/10_Master/tmp/', mode: 'copy' - input: - set name, file (meme), file (jaspar_db) from meme_for_tomtom.combine(db_for_tomtom) + set name, file (meme) from clustered_meme_for_tomtom output: set name, file ('*.tsv') into tsv_for_filter script: """ - tomtom ${meme} ${jaspar_db} -thresh ${params.tomtom_treshold} -text --norc | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv + tomtom ${meme} ${jaspar_db} -thresh ${params.thresh} -mi 1 -text | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv """ } @@ -366,7 +412,7 @@ process get_best_motif { script: """ - python ${path_bin}/get_best_motif.py ${meme} ${name}_best.meme + python ${path_bin}/get_best_motif.py ${meme} ${name}_best.meme ${params.best_motif} """ } From e0bc519c4e13140a7d3762c626d5285e5f458f67 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Sat, 8 Dec 2018 22:50:18 +0100 Subject: [PATCH 164/206] Update README.md --- README.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index da59386..28ae357 100644 --- a/README.md +++ b/README.md @@ -64,6 +64,7 @@ Optional arguments: --aprox_motif_len INT Motif length (Default: 10) --motif_occurence FLOAT Percentage of motifs over all sequences. Use 1 (Default) to assume every sequence contains a motif. --min_seq_length INT Remove all sequences below this value. (Default: 10) + Clustering: --global INT Global (=1) or local (=0) alignment. (Default: 0) --identity FLOAT Identity threshold. (Default: 0.8) @@ -78,11 +79,15 @@ Optional arguments: --interation INT Number of iterations done by glam2. More Interations: better results, higher runtime. (Default: 10000) --tomtom_treshold float Threshold for similarity score. (Default: 0.01) + Moitf clustering: + --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) + --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) + Creating GTF: --organism [homo_sapiens | mus_musculus] --tissues - - All arguments can be set in the configuration files. + +All arguments can be set in the configuration files. ``` From 889899f546543fa2f946e4e96618422eda16ee8c Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Sat, 8 Dec 2018 22:51:33 +0100 Subject: [PATCH 165/206] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 28ae357..02f4ec4 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,8 @@ De novo motif discovery and evaluation based on footprints identified by TOBIAS +For further information read the [documentation](https://github.molgen.mpg.de/loosolab/masterJLU2018/wiki) + ## Dependencies * [conda](https://conda.io/docs/user-guide/install/linux.html) * [Nextflow](https://www.nextflow.io/) From 250ee928d998f7112cf419ae80122bada284fb32 Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Mon, 10 Dec 2018 09:36:31 +0100 Subject: [PATCH 166/206] Update compareBed.sh --- bin/compareBed.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/bin/compareBed.sh b/bin/compareBed.sh index b476a0d..ee65fb4 100644 --- a/bin/compareBed.sh +++ b/bin/compareBed.sh @@ -96,7 +96,7 @@ if [ $he == true ] then echo "This script utilies bedtools to select new footprints from data." echo "Therefore the data is compared with known footprint motifs." - echo "The output is a new .bed file with added sequence information." + echo "The output is a new .bed file with added sequence information and a column with flags for better sequences (1)" echo "Required arguments are data and motifs, both in bed-format, and the fasta genome sequences." echo "If a parameter is chosen, a value must be provided or an error will occur." echo "--------------------" @@ -110,7 +110,7 @@ then echo " " echo " optional parameter:" echo " -w --workdir the path to directory where temporary files will be created" - echo " default is a new directory that is created in the current directory" + echo " default is the current directory" echo " -min --min minimum size of footprints; default is 10" echo " -max --max maximum size of footprints; default is 80" echo " -o --output output path/file ; default dir is workdir and filename is newMotifs.bed and newMotifs.bed.fasta" @@ -258,6 +258,7 @@ else fi #4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition +# also creates a small output file with information about the comparison Rscript --vanilla /bin/merge.R $min $max "$workdir" $data From e861fdcdb584816acdb7c3be24fc63f86be09811 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Mon, 10 Dec 2018 05:42:40 -0500 Subject: [PATCH 167/206] minor changes --- masterenv.yml | 6 +----- pipeline.nf | 2 +- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/masterenv.yml b/masterenv.yml index a977fe1..f776235 100644 --- a/masterenv.yml +++ b/masterenv.yml @@ -1,10 +1,6 @@ name: masterenv -channels: - - bioconda - - conda-forge dependencies: - - bedtools - r-seqinr - numpy - pybigWig @@ -24,4 +20,4 @@ dependencies: - biopython - pybedtools - matplotlib - - seaborn \ No newline at end of file + - seaborn diff --git a/pipeline.nf b/pipeline.nf index 000230f..3becaf6 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -144,7 +144,7 @@ process extract_known_TFBS { script: """ - python ${path_bin}/tfbsscan.py --use moods --core ${params.threads} -m ${db} -g ${fasta} -o ./ + python ${path_bin}/tfbsscan.py --use moods --core ${params.threads} -m ${db} -g ${fasta} -o . """ } From 638133b9ccd9c61513ec36c6097f3fbb5097bc7a Mon Sep 17 00:00:00 2001 From: basti Date: Mon, 10 Dec 2018 13:27:40 +0100 Subject: [PATCH 168/206] Implemented --dir parameter for remote data directory --- bin/Modules/Ensembl/ActivityCategorizer.py | 11 +++-- bin/Modules/Ensembl/ActivityTable.py | 7 ++- bin/Modules/Ensembl/Ensembl.py | 10 ++--- .../Ensembl/FTPHandling/URLRetrieve.py | 4 +- .../Ensembl/FTPHandling/VersionChecker.py | 44 ++++++++++++------- bin/Modules/Ensembl/GTFGen.py | 12 ++--- bin/Modules/ucsc/ucsc.py | 7 ++- bin/RegGTFExtractor.py | 24 +++++----- 8 files changed, 71 insertions(+), 48 deletions(-) mode change 100644 => 100755 bin/RegGTFExtractor.py diff --git a/bin/Modules/Ensembl/ActivityCategorizer.py b/bin/Modules/Ensembl/ActivityCategorizer.py index 3ef0258..bd82a92 100644 --- a/bin/Modules/Ensembl/ActivityCategorizer.py +++ b/bin/Modules/Ensembl/ActivityCategorizer.py @@ -4,7 +4,7 @@ class ActivityCategorizer: - def __init__(self, release, organism, wd): + def __init__(self, release, organism, wd, data_dir): # List of all Folders with Activity Tables @@ -18,7 +18,7 @@ def __init__(self, release, organism, wd): self.activity = {} - self.get_activity_data(release, organism, wd) + self.get_activity_data(release, organism, wd, data_dir) # Categorized Activity from Json-config print("Categorization: This may take a while") @@ -41,11 +41,14 @@ def read_config(self, organism, wd): return c_dict - def get_activity_data(self, release, organism, wd): + def get_activity_data(self, release, organism, wd, data_dir): for folder in self.folderlist: # Generate path to binary File - file = os.path.join(wd + "/EnsemblData", release, organism, "activity", folder, "table.bin") + if data_dir: + file = os.path.join(data_dir + "/EnsemblData", release, organism, "activity", folder, "table.bin") + else: + file = os.path.join(wd + "/data/EnsemblData", release, organism, "activity", folder, "table.bin") with open(file, "rb") as tables: self.activity[folder] = bytearray(tables.read()) diff --git a/bin/Modules/Ensembl/ActivityTable.py b/bin/Modules/Ensembl/ActivityTable.py index 34f4719..040d15b 100644 --- a/bin/Modules/Ensembl/ActivityTable.py +++ b/bin/Modules/Ensembl/ActivityTable.py @@ -15,8 +15,11 @@ class ActivityTable: 4, "activity=NA" """ - def __init__(self, organism, current_release, wd): - self.link = os.path.join(wd + "/EnsemblData/", current_release, organism, "activity") + def __init__(self, organism, current_release, wd, data_dir): + if data_dir: + self.link = os.path.join(data_dir + "/EnsemblData/", current_release, organism, "activity") + else: + self.link = os.path.join(wd + "/data/EnsemblData/", current_release, organism, "activity") self.folders = next(os.walk(self.link))[1] self.generator = ATGenerator(["activity=ACTIVE", "activity=POISED", diff --git a/bin/Modules/Ensembl/Ensembl.py b/bin/Modules/Ensembl/Ensembl.py index f0a922c..de5839d 100644 --- a/bin/Modules/Ensembl/Ensembl.py +++ b/bin/Modules/Ensembl/Ensembl.py @@ -6,15 +6,15 @@ class Ensembl: - def __init__(self, organism, wd): + def __init__(self, organism, wd, data_dir): print("Starting Ensembl") - self.updater = FTPRetriever(organism, wd) + self.updater = FTPRetriever(organism, wd, data_dir) self.release = self.updater.get_release() - self.acttable = ActivityTable(organism, self.release, wd) + self.acttable = ActivityTable(organism, self.release, wd, data_dir) self.acttable.check_and_generate_activity_table() - self.categorizer = ActivityCategorizer(self.release, organism, wd) + self.categorizer = ActivityCategorizer(self.release, organism, wd, data_dir) print("Generating GTF") - self.gtf_generator = GTFGen(organism, self.release, wd) + self.gtf_generator = GTFGen(organism, self.release, wd, data_dir) print("Ensembl Finished !") diff --git a/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py b/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py index 598a6f5..43feb54 100644 --- a/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py +++ b/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py @@ -15,8 +15,8 @@ def change_dir(self, wd): def get_all_entries(self): return self.ftp.nlst() - def get_all_entries_from_dir(self, dir): - self.change_dir(dir) + def get_all_entries_from_dir(self, dire): + self.change_dir(dire) return self.get_all_entries() def get_all_entries_as_FTPEntry(self): diff --git a/bin/Modules/Ensembl/FTPHandling/VersionChecker.py b/bin/Modules/Ensembl/FTPHandling/VersionChecker.py index 9c3500d..d4c1ca6 100644 --- a/bin/Modules/Ensembl/FTPHandling/VersionChecker.py +++ b/bin/Modules/Ensembl/FTPHandling/VersionChecker.py @@ -9,12 +9,12 @@ class EnsemblRegulationFTPRetriever: And downloading newest version if necessary """ - def __init__(self, organism, wd): + def __init__(self, organism, wd, data_dir): self.site_ftp = FTPHandler("ftp.ensembl.org", "pub") self.remoteversion = self.get_current_ftp_version() - self.localversion = self.get_current_local_version(wd) - if self.check_version_difference(organism, wd): - self.download_currentversion_version(self.remoteversion, organism, wd) + self.localversion = self.get_current_local_version(wd, data_dir) + if self.check_version_difference(organism, wd, data_dir): + self.download_currentversion_version(self.remoteversion, organism, wd, data_dir) else: print("Newest Version installed, no update needed.") @@ -31,15 +31,25 @@ def get_current_ftp_version(self): print("Current release is "+c_release) return c_release - def check_organism(self, organism, release, wd): - if organism in next(os.walk(os.path.join(wd+"/EnsemblData/"+release+"/")))[1]: - return False + def check_organism(self, organism, release, wd, data_dir): + if data_dir: + if organism in next(os.walk(os.path.join(data_dir+"/EnsemblData/"+release+"/")))[1]: + return False + else: + print("No Local Version for "+organism+" installed. Installing...") + return True else: - print("No Local Version for "+organism+" installed. Installing...") - return True + if organism in next(os.walk(os.path.join(wd+"/data/EnsemblData/"+release+"/")))[1]: + return False + else: + print("No Local Version for "+organism+" installed. Installing...") + return True - def get_current_local_version(self, wd): - directories = next(os.walk(os.path.join(wd+"/EnsemblData/")))[1] + def get_current_local_version(self, wd, data_dir): + if data_dir: + directories = next(os.walk(os.path.join(data_dir + "/EnsemblData/")))[1] + else: + directories = next(os.walk(os.path.join(wd+"/data/EnsemblData/")))[1] for dir in directories: if "release" in dir: localversion = sorted(directories, reverse=True)[0] @@ -51,7 +61,7 @@ def get_current_local_version(self, wd): print("No Version installed !") return None - def check_version_difference(self, organism, wd): + def check_version_difference(self, organism, wd, data_dir): local_version = self.localversion remote_version = self.remoteversion @@ -64,16 +74,18 @@ def check_version_difference(self, organism, wd): print("Outdated Version detected ! local: " + local_version + " remote: " + remote_version) return True else: - if self.check_organism(organism, local_version, wd): + if self.check_organism(organism, local_version, wd, data_dir): return True else: return False - def download_currentversion_version(self, version, organism, wd): + def download_currentversion_version(self, version, organism, wd, data_dir): # Download Base File - - targetfolder = os.path.join(wd+"/EnsemblData/", version, organism) + if data_dir: + targetfolder = os.path.join(data_dir + "/EnsemblData/", version, organism) + else: + targetfolder = os.path.join(wd+"/data/EnsemblData/", version, organism) os.makedirs(targetfolder) folder_url = "/pub/"+version+"/regulation/"+organism+"/" self.site_ftp.change_dir(folder_url) diff --git a/bin/Modules/Ensembl/GTFGen.py b/bin/Modules/Ensembl/GTFGen.py index cd70f3b..6a1a63b 100644 --- a/bin/Modules/Ensembl/GTFGen.py +++ b/bin/Modules/Ensembl/GTFGen.py @@ -5,14 +5,16 @@ class GTFGen: - def __init__(self, organism, release, wd): + def __init__(self, organism, release, wd, data_dir): - self.gff_lines = self.get_organism_as_gff(organism, release, wd) + self.gff_lines = self.get_organism_as_gff(organism, release, wd, data_dir) self.value_map = {0: "ACTIVE", 1: "POISED", 2: "REPRESSED", 3: "INACTIVE", 4: "NA"} - def get_organism_as_gff(self, organism, release, wd): - - directory = os.path.join(wd + "/EnsemblData/", release, organism) + def get_organism_as_gff(self, organism, release, wd, data_dir): + if data_dir: + directory = os.path.join(data_dir + "/EnsemblData/", release, organism) + else: + directory = os.path.join(wd + "/data/EnsemblData/", release, organism) inputfile = "" for file in os.listdir(directory): if file.endswith("gff.gz"): diff --git a/bin/Modules/ucsc/ucsc.py b/bin/Modules/ucsc/ucsc.py index 49e44ad..c8ad466 100644 --- a/bin/Modules/ucsc/ucsc.py +++ b/bin/Modules/ucsc/ucsc.py @@ -7,10 +7,13 @@ class UcscGtf: - def __init__(self, org, wd): + def __init__(self, org, wd, data_dir): self.organism_id = self.get_organism_id(org) self.link = "http://hgdownload.soe.ucsc.edu/gbdb/"+self.organism_id+"/ncbiRefSeq/refSeqFuncElems.bb" - self.output = os.path.join(wd + "/UCSCData/"+self.organism_id+".bed") + if data_dir: + self.output = os.path.join(data_dir + "/UCSCData" + self.organism_id+".bed") + else: + self.output = os.path.join(wd + "/data/UCSCData/" + self.organism_id+".bed") self.path_to_bin = os.path.join(wd + "/Modules/ucsc/bigBedToBed") print("Getting UCSC Data") print("Path to Bin: " + self.path_to_bin) diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py old mode 100644 new mode 100755 index e4657be..6f0e11c --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -13,14 +13,14 @@ def check_for_local_folder(wd): if not os.path.isdir(os.path.join(wd+"/EnsemblData")): - os.mkdir(os.path.join(wd+"/EnsemblData")) + os.mkdir(os.path.join(wd+"/data/EnsemblData")) - if not os.path.isdir(os.path.join(wd+"/UCSCData" )): - os.mkdir(os.path.join(wd+"/UCSCData" )) + if not os.path.isdir(os.path.join(wd+"/data/UCSCData")): + os.mkdir(os.path.join(wd+"/data/UCSCData")) def check_filter(tissue_cmd, org, wd): - path_to_config = os.path.join(wd + "/config/celltypes_" + org + ".json" ) + path_to_config = os.path.join(wd + "/config/celltypes_" + org + ".json") tissues_config = [] if not tissue_cmd: return False @@ -36,9 +36,9 @@ def check_filter(tissue_cmd, org, wd): return False -def main_script(org, wd, tissuetype=None): - - check_for_local_folder(wd) +def main_script(org, wd, data_dir, tissuetype=None): + if not data_dir: + check_for_local_folder(wd) if check_filter(tissuetype, org, wd): tissues = tissuetype print("Filter detected !") @@ -46,8 +46,8 @@ def main_script(org, wd, tissuetype=None): tissues = None print("Filter not detected !") - ucsc = UcscGtf(org, wd) - ense = Ensembl(org, wd) + ucsc = UcscGtf(org, wd, data_dir) + ense = Ensembl(org, wd, data_dir) print("Getting Unique Results") unique_filter = UniqueFilter(ense.get_gtf(), ucsc.get_gtf(), tissues) ResultSaver(unique_filter.get_results(), org, tissues) @@ -57,12 +57,12 @@ def main_script(org, wd, tissuetype=None): parser = argparse.ArgumentParser(description='GTF-Generator from UCSC Table Browser and Ensembl Regulatory Build' ) parser.add_argument('organism', help='Source organism [ homo_sapiens or mus_musculus ]', action='store', nargs='?', type=str) parser.add_argument('--tissue', help='Tissue- or Celltype(s)', action='store', nargs='*', type=str) - parser.add_argument('--wd', help='Working directory. default: "."', action='store', default='.', type=str) + parser.add_argument('--wd', help='Working directory. default: "."', action='store', default=os.getcwd(), type=str) + parser.add_argument('--dir', help='Data directory. default: "working_directory"', action='store', default="", type=str) args = vars(parser.parse_args()) - print("Working Dir: " + args["wd"]) if args["organism"]: print("Working Dir: " + args["wd"]) - main_script(args["organism"], args["wd"], args["tissue"]) + main_script(args["organism"], args["wd"], args["dir"], args["tissue"]) else: print("No Arguments found -> See python3 ./RegGTFExtractor.py -h for help.") From 0a0e9b8cf35c27ab95b7693e247a60d10a772a36 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 10 Dec 2018 13:56:53 +0100 Subject: [PATCH 169/206] correcting some errors --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 02f4ec4..5c93985 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ export PATH=[meme-suite instalation path]/bin:$PATH Download all files from the [GitHub repository](https://github.molgen.mpg.de/loosolab/masterJLU2018). The Nextflow-script needs a conda enviroment to run. Nextflow can create the needed enviroment from the given yaml-file. -On some systems Nrxtflow exits the run with following error: +On some systems Nextflow exits the run with following error: ``` Caused by: Failed to create Conda environment @@ -81,7 +81,7 @@ Optional arguments: --interation INT Number of iterations done by glam2. More Interations: better results, higher runtime. (Default: 10000) --tomtom_treshold float Threshold for similarity score. (Default: 0.01) - Moitf clustering: + Motif clustering: --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) From c1cb8ca922c1b5a439745cd22da17765e4ba8879 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 10 Dec 2018 14:38:02 +0100 Subject: [PATCH 170/206] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5c93985..2e16064 100644 --- a/README.md +++ b/README.md @@ -42,6 +42,7 @@ When the enviroment is created, set the variable 'path_env' in the configuration nextflow run pipeline.nf --input [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --jaspar_db [MEME-file] ``` ## Parameters +For a detailed overview of all Parameters follow this [link](https://github.molgen.mpg.de/loosolab/masterJLU2018/wiki/Configuration). ``` Required arguments: --input Path to BigWig-file From 42d32387b14945a46b53e234cac0dff80d63d825 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 10 Dec 2018 14:43:14 +0100 Subject: [PATCH 171/206] adding comment about the footprints_extraction --- pipeline.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pipeline.nf b/pipeline.nf index b1084df..866def8 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -117,7 +117,7 @@ All arguments can be set in the configuration files. bigwig_input.combine(bed_input).into {footprint_in} /* - +this process uses the uncontinuous score from a bigWig file to estimate footpints within peaks of interest */ process footprint_extraction { conda "${path_env}" From 198334ab0c44ec2dc65431e2a13e351948785d38 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Mon, 10 Dec 2018 14:45:15 +0100 Subject: [PATCH 172/206] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2e16064..f53d9df 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ When the enviroment is created, set the variable 'path_env' in the configuration nextflow run pipeline.nf --input [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --jaspar_db [MEME-file] ``` ## Parameters -For a detailed overview of all Parameters follow this [link](https://github.molgen.mpg.de/loosolab/masterJLU2018/wiki/Configuration). +For a detailed overview for all parameters follow this [link](https://github.molgen.mpg.de/loosolab/masterJLU2018/wiki/Configuration). ``` Required arguments: --input Path to BigWig-file From 5a7a52683b15b85946779d8e04abc792866fa586 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 10 Dec 2018 14:52:53 +0100 Subject: [PATCH 173/206] improvement of parameters for my part --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index f53d9df..09b7ee3 100644 --- a/README.md +++ b/README.md @@ -45,8 +45,8 @@ nextflow run pipeline.nf --input [BigWig-file] --bed [BED-file] --genome_fasta [ For a detailed overview for all parameters follow this [link](https://github.molgen.mpg.de/loosolab/masterJLU2018/wiki/Configuration). ``` Required arguments: - --input Path to BigWig-file - --bed Path to BED-file + --input Path to BigWig-file with scores on the peaks of interest + --bed Path to BED-file with peaks of interest corresponding to the BigWig file --genome_fasta Path to genome in FASTA-format --jaspar_db Path to motif-database in MEME-format From ffed012ffbdfbbccf27464576a77ec4eb083c118 Mon Sep 17 00:00:00 2001 From: anastasiia Date: Mon, 10 Dec 2018 14:54:19 +0100 Subject: [PATCH 174/206] improve parameters for my part once more --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 09b7ee3..66b2b1f 100644 --- a/README.md +++ b/README.md @@ -53,9 +53,9 @@ Required arguments: Optional arguments: Footprint extraction: - --window_length INT (Default: 200) - --step INT (Default: 100) - --percentage INT(Default: 0) + --window_length INT (Default: 200) a length of a window + --step INT (Default: 100) an interval to slide the window + --percentage INT(Default: 0) a percentage to be added to background while searching for footprints Filter unknown motifs: --min_size_fp INT (Default: 10) From 15aa68a214d05e7581714623db1a215f2d3a21e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Mon, 10 Dec 2018 09:13:39 -0500 Subject: [PATCH 175/206] help message fix --- pipeline.nf | 71 ++++++++++++++++++++++++++--------------------------- 1 file changed, 35 insertions(+), 36 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index f458f83..516b7da 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -1,10 +1,4 @@ -//!/usr/bin/env nextflow - -Channel.fromPath(params.input).map {it -> [it.simpleName, it]}.set {bigwig_input} -Channel.fromPath(params.bed).set {bed_input} -Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan; fa_overlap_2} -Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} -Channel.fromPath(params.config).set {config} +#!/usr/bin/env nextflow //setting default values params.input="" @@ -65,36 +59,36 @@ log.info """ Usage: nextflow run pipeline.nf --input [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --jaspar_db [MEME-file] Required arguments: - --input Path to BigWig-file - --bed Path to BED-file - --genome_fasta Path to genome in FASTA-format - --jaspar_db Path to motif-database in MEME-format + --input Path to BigWig-file + --bed Path to BED-file + --genome_fasta Path to genome in FASTA-format + --jaspar_db Path to motif-database in MEME-format Optional arguments: Footprint extraction: - --window_length INT (Default: 200) - --step INT (Default: 100) - --percentage INT(Default: 0) + --window_length INT (Default: 200) + --step INT (Default: 100) + --percentage INT (Default: 0) Filter unknown motifs: - --min_size_fp INT (Default: 10) - --max_size_fp INT (Default: 100) + --min_size_fp INT (Default: 10) + --max_size_fp INT (Default: 100) + + Clustering: + Sequence preparation/ reduction: + --kmer INT Kmer length (Default: 10) + --aprox_motif_len INT Motif length (Default: 10) + --motif_occurence FLOAT Percentage of motifs over all sequences. Use 1 (Default) to assume every sequence contains a motif. + --min_seq_length Interations Remove all sequences below this value. (Default: 10) Clustering: - Sequence preparation/ reduction: - --kmer INT Kmer length (Default: 10) - --aprox_motif_len INT Motif length (Default: 10) - --motif_occurence FLOAT Percentage of motifs over all sequences. Use 1 (Default) to assume every sequence contains a motif. - --min_seq_length INT Remove all sequences below this value. (Default: 10) - - Clustering: - --global INT Global (=1) or local (=0) alignment. (Default: 0) - --identity FLOAT Identity threshold. (Default: 0.8) - --sequence_coverage INT Minimum aligned nucleotides on both sequences. (Default: 8) - --memory INT Memory limit in MB. 0 for unlimited. (Default: 800) - --throw_away_seq INT Remove all sequences equal or below this length before clustering. (Default: 9) - --strand INT Align +/+ & +/- (= 1). Or align only +/+ (= 0). (Default: 0) + --global INT Global (=1) or local (=0) alignment. (Default: 0) + --identity FLOAT Identity threshold. (Default: 0.8) + --sequence_coverage INT Minimum aligned nucleotides on both sequences. (Default: 8) + --memory INT Memory limit in MB. 0 for unlimited. (Default: 800) + --throw_away_seq INT Remove all sequences equal or below this length before clustering. (Default: 9) + --strand INT Align +/+ & +/- (= 1). Or align only +/+ (= 0). (Default: 0) Motif estimation: --motif_min_len INT Minimum length of Motif (Default: 8) @@ -103,21 +97,27 @@ Optional arguments: --tomtom_treshold float Threshold for similarity score. (Default: 0.01) Moitf clustering: - --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) - --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) + --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) + --motif_similarity_thresh FLOAT Threshold for motif similarity score (Default: 0.00001) Creating GTF: - --organism [homo_sapiens | mus_musculus] - --tissues + --organism [homo_sapiens | mus_musculus] + --tissues All arguments can be set in the configuration files. """ +} else { + Channel.fromPath(params.input).map {it -> [it.simpleName, it]}.set {bigwig_input} + Channel.fromPath(params.bed).set {bed_input} + Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan; fa_overlap_2} + Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} + Channel.fromPath(params.config).set {config} } bigwig_input.combine(bed_input).set{footprint_in} /* -this process uses the uncontinuous score from a bigWig file to estimate footpints within peaks of interest +This process uses the uncontinuous score from a bigWig file to estimate footpints within peaks of interest */ process footprint_extraction { conda "${path_env}" @@ -225,7 +225,7 @@ process bed_to_clustered_fasta { tag{name} input: - set name, file (bed) from clustered_bed + set name, file (bed) from bed_for_motif_esitmation when: params.fasta == false @@ -349,7 +349,6 @@ process clustered_glam2 { """ } -*/ /* Running Tomtom on meme-files generated by GLAM2. From 30c17cc6cc3fe2d0da11615df899a0df0b09cb87 Mon Sep 17 00:00:00 2001 From: basti Date: Mon, 10 Dec 2018 16:25:23 +0100 Subject: [PATCH 176/206] Updated README. Added CrossMap functionality. Added mm9 and hg19 support. --- README.md | 8 +- bin/Modules/CrossMap.py | 1759 ++++++++++++++++++++++++++++++++++ bin/Modules/CrossMapper.py | 40 + bin/Modules/SaveResults.py | 13 +- bin/Modules/ucsc/bigBedToBed | Bin bin/RegGTFExtractor.py | 61 +- masterenv.yml | 3 +- 7 files changed, 1868 insertions(+), 16 deletions(-) create mode 100644 bin/Modules/CrossMap.py create mode 100644 bin/Modules/CrossMapper.py mode change 100644 => 100755 bin/Modules/ucsc/bigBedToBed diff --git a/README.md b/README.md index 02f4ec4..7eb9268 100644 --- a/README.md +++ b/README.md @@ -48,6 +48,7 @@ Required arguments: --bed Path to BED-file --genome_fasta Path to genome in FASTA-format --jaspar_db Path to motif-database in MEME-format + --organism STRING Source organism: [ hg19 | hg 38 or mm9 | mm10 ] Optional arguments: @@ -86,9 +87,10 @@ Optional arguments: --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) Creating GTF: - --organism [homo_sapiens | mus_musculus] - --tissues - + --tissues STRING Filter for tissue/category activity categorys as in JSON config (Default: None) + --wd PATH current working directory for the script (default: ".") + --dir PATH directory for saved Ensembl / UCSC file (default: "./data/") + --out PATH directory for the output GTF (default: ".") All arguments can be set in the configuration files. ``` diff --git a/bin/Modules/CrossMap.py b/bin/Modules/CrossMap.py new file mode 100644 index 0000000..97cfe0b --- /dev/null +++ b/bin/Modules/CrossMap.py @@ -0,0 +1,1759 @@ +#!/home/basti/miniconda3/envs/mpi-project/bin/python +''' +--------------------------------------------------------------------------------------- +CrossMap: lift over genomic coordinates between genome assemblies. +Supports BED/BedGraph, GFF/GTF, BAM/SAM, BigWig/Wig, VCF format files. +------------------------------------------------------------------------------------------ +''' + +import os,sys +import optparse +import collections +import subprocess +import string +from textwrap import wrap +from time import strftime + +import pyBigWig +import pysam +from bx.intervals import * +import numpy as np +import datetime +from cmmodule import ireader +from cmmodule import BED +from cmmodule import annoGene +from cmmodule import sam_header +from cmmodule import myutils +from cmmodule import bgrMerge + +__author__ = "Liguo Wang, Hao Zhao" +__contributor__="Liguo Wang, Hao Zhao" +__copyright__ = "Copyleft" +__credits__ = [] +__license__ = "GPLv2" +__version__="0.3.1" +__maintainer__ = "Liguo Wang" +__email__ = "wangliguo78@gmail.com" +__status__ = "Production" + +def printlog (mesg_lst): + ''' + print progress into stderr + ''' + if len(mesg_lst)==1: + msg = "@ " + strftime("%Y-%m-%d %H:%M:%S") + ": " + mesg_lst[0] + else: + msg = "@ " + strftime("%Y-%m-%d %H:%M:%S") + ": " + ' '.join(mesg_lst) + print(msg, file=sys.stderr) + +def parse_header( line ): + return dict( [ field.split( '=' ) for field in line.split()[1:] ] ) + +def revcomp_DNA(dna): + ''' + reverse complement of input DNA sequence. + ''' + complement = {'A': 'T', 'C': 'G', 'G': 'C', 'T': 'A','N':'N','X':'X'} + seq = dna.upper() + return ''.join(complement[base] for base in reversed(seq)) + +def wiggleReader( f ): + ''' + Iterator yielding chrom, start, end, strand, value. + Values are zero-based, half-open. + Regions which lack scores are ignored. + ''' + current_chrom = None + current_pos = None + current_step = None + + # always for wiggle data + strand = '+' + + mode = "bed" + for line in ireader.reader(f): + if line.isspace() or line.startswith( "track" ) or line.startswith( "#" ) or line.startswith( "browser" ): + continue + elif line.startswith( "variableStep" ): + header = parse_header( line ) + current_chrom = header['chrom'] + current_pos = None + current_step = None + if 'span' in header: current_span = int( header['span'] ) + else: current_span = 1 + mode = "variableStep" + elif line.startswith( "fixedStep" ): + header = parse_header( line ) + current_chrom = header['chrom'] + current_pos = int( header['start'] ) - 1 + current_step = int( header['step'] ) + if 'span' in header: current_span = int( header['span'] ) + else: current_span = 1 + mode = "fixedStep" + elif mode == "bed": + fields = line.split() + if len( fields ) > 3: + if len( fields ) > 5: + yield fields[0], int( fields[1] ), int( fields[2] ), fields[5], float( fields[3] ) + else: + yield fields[0], int( fields[1] ), int( fields[2] ), strand, float( fields[3] ) + elif mode == "variableStep": + fields = line.split() + pos = int( fields[0] ) - 1 + yield current_chrom, pos, pos + current_span, strand, float( fields[1] ) + elif mode == "fixedStep": + yield current_chrom, current_pos, current_pos + current_span, strand, float( line.split()[0] ) + current_pos += current_step + else: + raise "Unexpected input line: %s" % line.strip() + +def bigwigReader(infile, bin_size = 2000): + ''' + infile: bigwig format file + chromsize: chrom_name: size. + return: chrom, position (0-based), value + ''' + + bw = pyBigWig.open(infile) + chrom_sizes = bw.chroms() + #print (chrom_sizes) + + for chr_name, chr_size in list(chrom_sizes.items()): + for chrom, st, end in BED.tillingBed(chrName = chr_name,chrSize = chr_size,stepSize = bin_size): + try: + a = bw.stats(chrom,st,end) + except: + continue + + if bw.stats(chrom,st,end)[0] is None: + continue + sig_list = bw.values(chrom,st,end) + sig_list = np.nan_to_num(sig_list) #change 'nan' into '0.' + low_bound = st + point_num = 1 + score = sig_list[0] + for value in (sig_list[1:]): + if value == score: + point_num += 1 + else: + yield(( chrom, low_bound, low_bound + point_num, score)) + score = value + low_bound = low_bound + point_num + point_num = 1 + + +def check_bed12(bedline): + ''' + check if bed12 format is correct or not + ''' + fields = bedline.strip().split() + if len(fields) !=12: + return False + if fields[5] not in ['+','-','.']: + return False + try: + chromStart = int(fields[1]) + chromEnd = int(fields[2]) + thickStart = int(fields[6]) + thickEnd = int(fields[7]) + blockCount = int(fields[9]) + blockSizes = [int(i) for i in fields[10].rstrip(',').split(',')] + blockStarts = [int(i) for i in fields[11].rstrip(',').split(',')] + except: + return False + if chromStart > chromEnd or thickStart > thickEnd: + return False + if thickStart < chromStart or thickEnd > chromEnd: + return False + if len(blockSizes) != blockCount: + return False + if len(blockStarts) != blockCount: + return False + if blockCount <1: + return False + for i in blockSizes: + if i < 0: return False + for i in blockStarts: + if i < 0: return False + return True + +def intersectBed(xxx_todo_changeme, xxx_todo_changeme1): + ''' + return intersection of two bed regions + ''' + (chr1, st1, end1) = xxx_todo_changeme + (chr2, st2, end2) = xxx_todo_changeme1 + if int(st1) > int(end1) or int(st2) > int(end2): + raise Exception ("Start cannot be larger than end") + if chr1 != chr2: + return None + if int(st1) > int(end2) or int(end1) < int(st2): + return None + return (chr1, max(st1, st2), min(end1,end2)) + +def read_chain_file (chain_file, print_table=False): + ''' + input chain_file could be either plain text, compressed file (".gz", ".Z", ".z", ".bz", ".bz2", ".bzip2"), + or a URL pointing to the chain file ("http://", "https://", "ftp://"). If url was used, chain file must be plain text + ''' + + printlog(["Read chain_file: ", chain_file]), + maps={} + target_chromSize={} + source_chromSize={} + if print_table: + blocks=[] + + for line in ireader.reader(chain_file): + # Example: chain 4900 chrY 58368225 + 25985403 25985638 chr5 151006098 - 43257292 43257528 1 + if not line.strip(): + continue + line=line.strip() + if line.startswith(('#',' ')):continue + fields = line.split() + + if fields[0] == 'chain' and len(fields) in [12, 13]: + score = int(fields[1]) # Alignment score + source_name = fields[2] # E.g. chrY + source_size = int(fields[3]) # Full length of the chromosome + source_strand = fields[4] # Must be + + if source_strand != '+': + raise Exception("Source strand in an .over.chain file must be +. (%s)" % line) + source_start = int(fields[5]) # Start of source region + source_end = int(fields[6]) # End of source region + + target_name = fields[7] # E.g. chr5 + target_size = int(fields[8]) # Full length of the chromosome + target_strand = fields[9] # + or - + target_start = int(fields[10]) + target_end = int(fields[11]) + target_chromSize[target_name]= target_size + source_chromSize[source_name] = source_size + + if target_strand not in ['+', '-']: + raise Exception("Target strand must be - or +. (%s)" % line) + #if target_strand == '+': + # target_start = int(fields[10]) + # target_end = int(fields[11]) + #if target_strand == '-': + # target_start = target_size - target_end + # target_end = target_size - target_start + chain_id = None if len(fields) == 12 else fields[12] + if source_name not in maps: + maps[source_name] = Intersecter() + + sfrom, tfrom = source_start, target_start + + # Now read the alignment chain from the file and store it as a list (source_from, source_to) -> (target_from, target_to) + elif fields[0] != 'chain' and len(fields) == 3: + size, sgap, tgap = int(fields[0]), int(fields[1]), int(fields[2]) + if print_table: + if target_strand == '+': blocks.append((source_name,sfrom, sfrom+size, source_strand, target_name, tfrom, tfrom+size, target_strand)) + elif target_strand == '-': blocks.append((source_name,sfrom, sfrom+size, source_strand, target_name, target_size - (tfrom+size), target_size - tfrom, target_strand)) + + if target_strand == '+': + maps[source_name].add_interval( Interval(sfrom, sfrom+size,(target_name,tfrom, tfrom+size,target_strand))) + elif target_strand == '-': + maps[source_name].add_interval( Interval(sfrom, sfrom+size,(target_name,target_size - (tfrom+size), target_size - tfrom, target_strand))) + + sfrom += size + sgap + tfrom += size + tgap + + elif fields[0] != 'chain' and len(fields) == 1: + size = int(fields[0]) + if print_table: + if target_strand == '+': blocks.append((source_name,sfrom, sfrom+size, source_strand, target_name, tfrom, tfrom+size, target_strand)) + elif target_strand == '-': blocks.append((source_name,sfrom, sfrom+size, source_strand, target_name, target_size - (tfrom+size), target_size - tfrom, target_strand)) + + if target_strand == '+': + maps[source_name].add_interval( Interval(sfrom, sfrom+size,(target_name,tfrom, tfrom+size,target_strand))) + elif target_strand == '-': + maps[source_name].add_interval( Interval(sfrom, sfrom+size,(target_name,target_size - (tfrom+size), target_size - tfrom, target_strand))) + else: + raise Exception("Invalid chain format. (%s)" % line) + if (sfrom + size) != source_end or (tfrom + size) != target_end: + raise Exception("Alignment blocks do not match specified block sizes. (%s)" % header) + + if print_table: + for i in blocks: + print('\t'.join([str(n) for n in i])) + + return (maps,target_chromSize, source_chromSize) + + +def map_coordinates(mapping, q_chr, q_start, q_end, q_strand='+', print_match=False): + ''' + Map coordinates from source assembly to target assembly + ''' + + matches=[] + complement ={'+':'-','-':'+'} + if q_chr not in mapping: + return None + else: + targets = mapping[q_chr].find(q_start, q_end) + if len(targets)==0: + return None + elif len(targets)==1: + s_start = targets[0].start + s_end = targets[0].end + t_chrom = targets[0].value[0] + t_start = targets[0].value[1] + t_end = targets[0].value[2] + t_strand = targets[0].value[3] + + (chr, real_start, real_end) = intersectBed((q_chr,q_start,q_end),(q_chr,s_start,s_end)) + l_offset = abs(real_start - s_start) + #r_offset = real_end - s_end + size = abs(real_end - real_start) + + matches.append( (chr, real_start, real_end,q_strand)) + if t_strand == '+': + i_start = t_start + l_offset + if q_strand == '+': + matches.append( (t_chrom, i_start, i_start + size, t_strand)) + else: + matches.append( (t_chrom, i_start, i_start + size, complement[t_strand])) + elif t_strand == '-': + i_start = t_end - l_offset - size + if q_strand == '+': + matches.append( (t_chrom, i_start, i_start + size, t_strand)) + else: + matches.append( (t_chrom, i_start, i_start + size, complement[t_strand])) + else: + raise Exception("Unknown strand: %s. Can only be '+' or '-'." % q_strand) + + elif len(targets) > 1: + for t in targets: + s_start = t.start + s_end = t.end + t_chrom = t.value[0] + t_start = t.value[1] + t_end = t.value[2] + t_strand = t.value[3] + + (chr, real_start, real_end) = intersectBed((q_chr,q_start,q_end),(q_chr,s_start,s_end)) + + l_offset = abs(real_start - s_start) + #r_offset = abs(real_end - s_end) + size = abs(real_end - real_start) + + matches.append( (chr, real_start, real_end,q_strand) ) + if t_strand == '+': + i_start = t_start + l_offset + if q_strand == '+': + matches.append( (t_chrom, i_start, i_start + size, t_strand)) + else: + matches.append( (t_chrom, i_start, i_start + size, complement[t_strand])) + elif t_strand == '-': + i_start = t_end - l_offset - size + if q_strand == '+': + matches.append( (t_chrom, i_start, i_start + size, t_strand)) + else: + matches.append( (t_chrom, i_start, i_start + size, complement[t_strand])) + else: + raise Exception("Unknown strand: %s. Can only be '+' or '-'." % q_strand) + + if print_match: + print(matches) + # input: 'chr1',246974830,247024835 + # output: [('chr1', 246974830, 246974833, '+' ), ('chr1', 248908207, 248908210, '+' ), ('chr1', 247024833, 247024835, '+'), ('chr1', 249058210, 249058212,'+')] + # [('chr1', 246974830, 246974833), ('chr1', 248908207, 248908210)] + + return matches + +def crossmap_vcf_file(mapping, infile,outfile, liftoverfile, refgenome): + ''' + Convert genome coordinates in VCF format. + ''' + + #index refegenome file if it hasn't been done + if not os.path.exists(refgenome + '.fai'): + printlog(["Creating index for", refgenome]) + pysam.faidx(refgenome) + + refFasta = pysam.Fastafile(refgenome) + + FILE_OUT = open(outfile ,'w') + UNMAP = open(outfile + '.unmap','w') + + total = 0 + fail = 0 + withChr = False # check if the VCF data lines use 'chr1' or '1' + + for line in ireader.reader(infile): + if not line.strip(): + continue + line=line.strip() + + #deal with meta-information lines. + + #meta-information lines needed in both mapped and unmapped files + if line.startswith('##fileformat'): + print(line, file=FILE_OUT) + print(line, file=UNMAP) + elif line.startswith('##INFO'): + print(line, file=FILE_OUT) + print(line, file=UNMAP) + elif line.startswith('##FILTER'): + print(line, file=FILE_OUT) + print(line, file=UNMAP) + elif line.startswith('##FORMAT'): + print(line, file=FILE_OUT) + print(line, file=UNMAP) + elif line.startswith('##ALT'): + print(line, file=FILE_OUT) + print(line, file=UNMAP) + elif line.startswith('##SAMPLE'): + print(line, file=FILE_OUT) + print(line, file=UNMAP) + elif line.startswith('##PEDIGREE'): + print(line, file=FILE_OUT) + print(line, file=UNMAP) + + #meta-information lines needed in unmapped files + elif line.startswith('##assembly'): + print(line, file=UNMAP) + elif line.startswith('##contig'): + print(line, file=UNMAP) + if 'ID=chr' in line: + withChr = True + + #update contig information + elif line.startswith('#CHROM'): + printlog(["Updating contig field ... "]) + target_gsize = dict(list(zip(refFasta.references, refFasta.lengths))) + for chr_id in sorted(target_gsize): + if chr_id.startswith('chr'): + if withChr is True: + print("##contig=" % (chr_id, target_gsize[chr_id], os.path.basename(refgenome)), file=FILE_OUT) + else: + print("##contig=" % (chr_id.replace('chr',''), target_gsize[chr_id], os.path.basename(refgenome)), file=FILE_OUT) + else: + if withChr is True: + print("##contig=" % ('chr' + chr_id, target_gsize[chr_id], os.path.basename(refgenome)), file=FILE_OUT) + else: + print("##contig=" % (chr_id, target_gsize[chr_id], os.path.basename(refgenome)), file=FILE_OUT) + + print("##liftOverProgram=CrossMap(https://sourceforge.net/projects/crossmap/)", file=FILE_OUT) + print("##liftOverFile=" + liftoverfile, file=FILE_OUT) + print("##new_reference_genome=" + refgenome, file=FILE_OUT) + print("##liftOverTime=" + datetime.date.today().strftime("%B%d,%Y"), file=FILE_OUT) + print(line, file=FILE_OUT) + print(line, file=UNMAP) + + else: + if line.startswith('#'):continue + fields = str.split(line,maxsplit=7) + total += 1 + + if fields[0].startswith('chr'): + chrom = fields[0] + else: + chrom = 'chr' + fields[0] + + start = int(fields[1])-1 # 0 based + end = start + len(fields[3]) + a = map_coordinates(mapping, chrom, start, end,'+') + if a is None: + print(line, file=UNMAP) + fail += 1 + continue + + if len(a) == 2: + # update chrom + target_chr = str(a[1][0]) #target_chr is from chain file, could be 'chr1' or '1' + target_start = a[1][1] + target_end = a[1][2] + if withChr is False: + fields[0] = target_chr.replace('chr','') + else: + fields[0] = target_chr + + # update start coordinate + fields[1] = target_start + 1 + + if refFasta.references[0].startswith('chr'): + if target_chr.startswith('chr'): + fields[3] = refFasta.fetch(target_chr,target_start,target_end).upper() + else: + fields[3] = refFasta.fetch('chr'+target_chr,target_start,target_end).upper() + else: + if target_chr.startswith('chr'): + fields[3] = refFasta.fetch(target_chr.replace('chr',''),target_start,target_end).upper() + else: + fields[3] = refFasta.fetch(target_chr,target_start,target_end).upper() + + + + if fields[3] != fields[4]: + print('\t'.join(map(str, fields)), file=FILE_OUT) + else: + print(line, file=UNMAP) + fail += 1 + else: + print(line, file=UNMAP) + fail += 1 + continue + FILE_OUT.close() + UNMAP.close() + printlog (["Total entries:", str(total)]) + printlog (["Failed to map:", str(fail)]) + + +def crossmap_bed_file(mapping, inbed,outfile=None): + ''' + Convert genome coordinates (in bed format) between assemblies. + BED format: http://genome.ucsc.edu/FAQ/FAQformat.html#format1 + ''' + + # check if 'outfile' was set. If not set, print to screen, if set, print to file + if outfile is not None: + FILE_OUT = open(outfile,'w') + UNMAP = open(outfile + '.unmap','w') + else: + pass + + for line in ireader.reader(inbed): + if line.startswith('#'):continue + if line.startswith('track'):continue + if line.startswith('browser'):continue + if not line.strip():continue + line=line.strip() + fields=line.split() + strand = '+' + + # filter out line less than 3 columns + if len(fields)<3: + print("Less than 3 fields. skip " + line, file=sys.stderr) + if outfile: + print(line, file=UNMAP) + continue + try: + int(fields[1]) + except: + print("Start corrdinate is not an integer. skip " + line, file=sys.stderr) + if outfile: + print(line, file=UNMAP) + continue + try: + int(fields[2]) + except: + print("End corrdinate is not an integer. skip " + line, file=sys.stderr) + if outfile: + print(line, file=UNMAP) + continue + if int(fields[1]) > int(fields[2]): + print("\"Start\" is larger than \"End\" corrdinate is not an integer. skip " + line, file=sys.stderr) + if outfile: + print(line, file=UNMAP) + continue + + # deal with bed less than 12 columns + if len(fields)<12: + + # try to reset strand + try: + for f in fields: + if f in ['+','-']: + strand = f + except: + pass + + a = map_coordinates(mapping, fields[0], int(fields[1]),int(fields[2]),strand) + # example of a: [('chr1', 246974830, 246974833,'+'), ('chr1', 248908207, 248908210,'+')] + + try: + if len(a) % 2 != 0: + if outfile is None: + print(line + '\tFail') + else: + print(line, file=UNMAP) + continue + if len(a) == 2: + + #reset fields + fields[0] = a[1][0] + fields[1] = a[1][1] + fields[2] = a[1][2] + for i in range(0,len(fields)): #update the strand information + if fields[i] in ['+','-']: + fields[i] = a[1][3] + + if outfile is None: + print(line + '\t->\t' + '\t'.join([str(i) for i in fields])) + else: + print('\t'.join([str(i) for i in fields]), file=FILE_OUT) + if len(a) >2 : + count=0 + for j in range(1,len(a),2): + count += 1 + fields[0] = a[j][0] + fields[1] = a[j][1] + fields[2] = a[j][2] + for i in range(0,len(fields)): #update the strand information + if fields[i] in ['+','-']: + fields[i] = a[j][3] + + if outfile is None: + print(line + '\t'+ '(split.' + str(count) + ':' + ':'.join([str(i) for i in a[j-1]]) + ')\t' + '\t'.join([str(i) for i in fields])) + else: + print('\t'.join([str(i) for i in fields]), file=FILE_OUT) + except: + if outfile is None: + print(line + '\tFail') + else: + print(line, file=UNMAP) + continue + + # deal with bed12 and bed12+8 (genePred format) + if len(fields)==12 or len(fields)==20: + strand = fields[5] + if strand not in ['+','-']: + raise Exception("Unknown strand: %s. Can only be '+' or '-'." % strand) + fail_flag=False + exons_old_pos = annoGene.getExonFromLine(line) #[[chr,st,end],[chr,st,end],...] + #print exons_old_pos + exons_new_pos = [] + for e_chr, e_start, e_end in exons_old_pos: + a = map_coordinates(mapping, e_chr, e_start, e_end, strand) + if a is None: + fail_flag =True + break + + if len(a) == 2: + exons_new_pos.append(a[1]) + # a has two elements, first is query, 2nd is target. # [('chr1', 246974830, 246974833,'+'), ('chr1', 248908207, 248908210,'+')] + else: + fail_flag =True + break + + if not fail_flag: + # check if all exons were mapped to the same chromosome the same strand + chr_id = set() + exon_strand = set() + + for e_chr, e_start, e_end, e_strand in exons_new_pos: + chr_id.add(e_chr) + exon_strand.add(e_strand) + if len(chr_id) != 1 or len(exon_strand) != 1: + fail_flag = True + + if not fail_flag: + # build new bed + cds_start_offset = int(fields[6]) - int(fields[1]) + cds_end_offset = int(fields[2]) - int(fields[7]) + new_chrom = exons_new_pos[0][0] + new_chrom_st = exons_new_pos[0][1] + new_chrom_end = exons_new_pos[-1][2] + new_name = fields[3] + new_score = fields[4] + new_strand = exons_new_pos[0][3] + new_thickStart = new_chrom_st + cds_start_offset + new_thickEnd = new_chrom_end - cds_end_offset + new_ittemRgb = fields[8] + new_blockCount = len(exons_new_pos) + new_blockSizes = ','.join([str(o - n) for m,n,o,p in exons_new_pos]) + new_blockStarts = ','.join([str(n - new_chrom_st) for m,n,o,p in exons_new_pos]) + + new_bedline = '\t'.join(str(i) for i in (new_chrom,new_chrom_st,new_chrom_end,new_name,new_score,new_strand,new_thickStart,new_thickEnd,new_ittemRgb,new_blockCount,new_blockSizes,new_blockStarts)) + if check_bed12(new_bedline) is False: + fail_flag = True + else: + if outfile is None: + print(line + '\t->\t' + new_bedline) + else: + print(new_bedline, file=FILE_OUT) + + if fail_flag: + if outfile is None: + print(line + '\tFail') + else: + print(line, file=UNMAP) + +def crossmap_gff_file(mapping, ingff,outfile=None): + ''' + Convert genome coordinates (in GFF/GTF format) between assemblies. + GFF (General Feature Format) lines have nine required fields that must be Tab-separated: + + 1. seqname - The name of the sequence. Must be a chromosome or scaffold. + 2. source - The program that generated this feature. + 3. feature - The name of this type of feature. Some examples of standard feature types + are "CDS", "start_codon", "stop_codon", and "exon". + 4. start - The starting position of the feature in the sequence. The first base is numbered 1. + 5. end - The ending position of the feature (inclusive). + 6. score - A score between 0 and 1000. If the track line useScore attribute is set to 1 + for this annotation data set, the score value will determine the level of gray in + which this feature is displayed (higher numbers = darker gray). If there is no score + value, enter ".". + 7. strand - Valid entries include '+', '-', or '.' (for don't know/don't care). + 8. frame - If the feature is a coding exon, frame should be a number between 0-2 that + represents the reading frame of the first base. If the feature is not a coding exon, + the value should be '.'. + 9. group - All lines with the same group are linked together into a single item. + + GFF format: http://genome.ucsc.edu/FAQ/FAQformat.html#format3 + + GTF (Gene Transfer Format) is a refinement to GFF that tightens the specification. The + first eight GTF fields are the same as GFF. The group field has been expanded into a + list of attributes. Each attribute consists of a type/value pair. Attributes must end + in a semi-colon, and be separated from any following attribute by exactly one space. + + GTF format: http://genome.ucsc.edu/FAQ/FAQformat.html#format4 + + We do NOT check if features (exon, CDS, etc) belonging to the same gene originally were + converted into the same chromosome/strand. + ''' + + if outfile is not None: + FILE_OUT = open(outfile,'w') + UNMAP = open(outfile + '.unmap', 'w') + + for line in ireader.reader(ingff): + if line.startswith('#'):continue + if line.startswith('track'):continue + if line.startswith('browser'):continue + if line.startswith('visibility'):continue + if not line.strip():continue + + line=line.strip() + fields=line.split('\t') + # check GFF file + #if len(fields) != 9: + # print >>sys.stderr, 'GFF file must has 9 columns. Skip ' + line + # continue + try: + start = int(fields[3]) - 1 #0-based + end = int(fields[4])/1 + feature_size = end - start + except: + print('Cannot recognize \"start\" and \"end\" coordinates. Skip ' + line, file=sys.stderr) + if outfile: + print(line, file=UNMAP) + continue + if fields[6] not in ['+','-','.']: + print('Cannot recognize \"strand\". Skip ' + line, file=sys.stderr) + if outfile: + print(line, file=UNMAP) + continue + + strand = '-' if fields[6] == '-' else '+' + + chrom = fields[0] + a = map_coordinates(mapping, chrom,start,end,strand) + if a is None: + if outfile is None: + print(line + '\tfail (no match to target assembly)') + else: + print(line, file=UNMAP) + continue + if len(a) !=2: + if outfile is None: + print(line + '\tfail (multpile match to target assembly)') + else: + print(line, file=UNMAP) + else: + if (int(a[1][2]) - int(a[1][1])) != feature_size: # check if it is exact match + if outfile is None: + print(line + '\tfail (not exact match)') + else: + print(line, file=UNMAP) + fields[0] = a[1][0] # chrom + fields[3] = a[1][1] + 1 # start, 1-based + fields[4] = a[1][2] + fields[6] = a[1][3] + + if outfile is None: + print(line + '\t->\t' + '\t'.join([str(i) for i in fields])) + else: + print('\t'.join([str(i) for i in fields]), file=FILE_OUT) + +def crossmap_bam_file(mapping, chainfile, infile, outfile_prefix, chrom_size, IS_size=200, IS_std=30, fold=3, addtag = True): + ''' + Convert genome coordinates (in BAM/SAM format) between assemblies. + BAM/SAM format: http://samtools.sourceforge.net/ + chrom_size is target chromosome size + + if addtag is set to True, will add tags to each alignmnet: + Q = QC (QC failed) + N = unmapped (originally unmapped or originally mapped but failed to liftover to new assembly) + M = multiple mapped (alignment can be liftover to multiple places) + U = unique mapped (alignment can be liftover to only 1 place) + + tags for pair-end sequencing include: + + QF: QC failed + + NN: both read1 and read2 unmapped + NU: read1 unmapped, read2 unique mapped + NM: read1 unmapped, multiple mapped + + UN: read1 uniquely mapped, read2 unmap + UU: both read1 and read2 uniquely mapped + UM: read1 uniquely mapped, read2 multiple mapped + + MN: read1 multiple mapped, read2 unmapped + MU: read1 multiple mapped, read2 unique mapped + MM: both read1 and read2 multiple mapped + + tags for single-end sequencing include: + + QF: QC failed + SN: unmaped + SM: multiple mapped + SU: uniquely mapped + + ''' + + # determine the input file format (BAM or SAM) + try: + samfile = pysam.Samfile(infile,'rb') + if len(samfile.header) == 0: + print("BAM file has no header section. Exit!", file=sys.stderr) + sys.exit(1) + bam_format = True + except: + samfile = pysam.Samfile(infile,'r') + if len(samfile.header) == 0: + print("SAM file has no header section. Exit!", file=sys.stderr) + sys.exit(1) + bam_format = False + + # add comments into BAM/SAM header section + if bam_format: + comments=['Liftover from original BAM file: ' + infile] + else: + comments=['Liftover from original SAM file: ' + infile] + comments.append('Liftover is based on the chain file: ' + chainfile) + + sam_ori_header = samfile.header + (new_header, name_to_id) = sam_header.bam_header_generator(orig_header = sam_ori_header, chrom_size = chrom_size, prog_name="CrossMap",prog_ver = __version__, format_ver=1.0,sort_type = 'coordinate',co=comments) + + # write to file + if outfile_prefix is not None: + if bam_format: + OUT_FILE = pysam.Samfile( outfile_prefix + '.bam', "wb", header = new_header ) + #OUT_FILE_UNMAP = pysam.Samfile( outfile_prefix + '.unmap.bam', "wb", template=samfile ) + printlog (["Liftover BAM file:", infile, '==>', outfile_prefix + '.bam']) + else: + OUT_FILE = pysam.Samfile( outfile_prefix + '.sam', "wh", header = new_header ) + #OUT_FILE_UNMAP = pysam.Samfile( outfile_prefix + '.unmap.sam', "wh", template=samfile ) + printlog (["Liftover SAM file:", infile, '==>', outfile_prefix + '.sam']) + # write to screen + else: + if bam_format: + OUT_FILE = pysam.Samfile( '-', "wb", header = new_header ) + #OUT_FILE_UNMAP = pysam.Samfile( infile.replace('.bam','') + '.unmap.bam', "wb", template=samfile ) + printlog (["Liftover BAM file:", infile]) + else: + OUT_FILE = pysam.Samfile( '-', "w", header = new_header ) + #OUT_FILE_UNMAP = pysam.Samfile( infile.replace('.sam','') + '.unmap.sam', "wh", template=samfile ) + printlog (["Liftover SAM file:", infile]) + + QF = 0 + NN = 0 + NU = 0 + NM = 0 + UN = 0 + UU = 0 + UM = 0 + MN = 0 + MU = 0 + MM = 0 + SN = 0 + SM = 0 + SU = 0 + total_item = 0 + try: + while(1): + total_item += 1 + new_alignment = pysam.AlignedRead() # create AlignedRead object + old_alignment = next(samfile) + + # qcfailed reads will be written to OUT_FILE_UNMAP for both SE and PE reads + if old_alignment.is_qcfail: + QF += 1 + if addtag: old_alignment.set_tag(tag="QF", value=0) + OUT_FILE.write(old_alignment) + continue + # new_alignment.qqual = old_alignment.qqual # quality string of read, exclude soft clipped part + # new_alignment.qlen = old_alignment.qlen # length of the "aligned part of read" + # new_alignment. aligned_pairs = old_alignment. aligned_pairs #read coordinates <=> ref coordinates + # new_alignment_aend = old_alignment.aend # reference End position of the aligned part (of read) + + #new_alignment.qname = old_alignment.qname # 1st column. read name. + #new_alignment.flag = old_alignment.flag # 2nd column. subject to change. flag value + #new_alignment.tid = old_alignment.tid # 3rd column. samfile.getrname(tid) == chrom name + #new_alignment.pos = old_alignment.pos # 4th column. reference Start position of the aligned part (of read) [0-based] + #new_alignment.mapq = old_alignment.mapq # 5th column. mapping quality + #new_alignment.cigar= old_alignment.cigar # 6th column. subject to change. + #new_alignment.rnext = old_alignment.rnext # 7th column. tid of the reference (mate read mapped to) + #new_alignment.pnext = old_alignment.pnext # 8th column. position of the reference (0 based, mate read mapped to) + #new_alignment.tlen = old_alignment.tlen # 9th column. insert size + #new_alignment.seq = old_alignment.seq # 10th column. read sequence. all bases. + #new_alignment.qual = old_alignment.qual # 11th column. read sequence quality. all bases. + #new_alignment.tags = old_alignment.tags # 12 - columns + + new_alignment.qname = old_alignment.qname # 1st column. read name. + new_alignment.seq = old_alignment.seq # 10th column. read sequence. all bases. + new_alignment.qual = old_alignment.qual # 11th column. read sequence quality. all bases. + new_alignment.tags = old_alignment.tags # 12 - columns + + + # by default pysam will change RG:Z to RG:A, which can cause downstream failures with GATK and freebayes + # Thanks Wolfgang Resch identified this bug and provided solution. + + try: + rg, rgt = old_alignment.get_tag("RG", with_value_type=True) + except KeyError: + pass + else: + new_alignment.set_tag("RG", str(rg), rgt) + + if old_alignment.is_paired: + new_alignment.flag = 0x0001 #pair-end + if old_alignment.is_read1: + new_alignment.flag = new_alignment.flag | 0x40 + elif old_alignment.is_read2: + new_alignment.flag = new_alignment.flag | 0x80 + + #================================== + # R1 is originally unmapped + #================================== + if old_alignment.is_unmapped: + #This line will set the unmapped read flag for the first read in pair (in case it is unmapped). + #Thanks Amir Keivan Mohtashami reporting this bug. + new_alignment.flag = new_alignment.flag | 0x4 + + #------------------------------------ + # both R1 and R2 unmapped + #------------------------------------ + if old_alignment.mate_is_unmapped: + NN += 1 + if addtag: old_alignment.set_tag(tag="NN", value=0) + OUT_FILE.write(old_alignment) + continue + else: # originally, read-1 unmapped, read-2 is mapped + try: + read2_chr = samfile.getrname(old_alignment.rnext) + read2_strand = '-' if old_alignment.mate_is_reverse else '+' + read2_start = old_alignment.pnext + read2_end = read2_start + 1 + read2_maps = map_coordinates(mapping, read2_chr, read2_start, read2_end, read2_strand) + # [('chr1', 246974830, 246974833, '+' ), ('chr1', 248908207, 248908210, '+' )] + except: + read2_maps = None + + #------------------------------------ + # both R1 and R2 unmapped + #------------------------------------ + if read2_maps is None: + NN += 1 + if addtag: old_alignment.set_tag(tag="NN", value=0) + OUT_FILE.write(old_alignment) + continue + + #------------------------------------ + # R1 unmapped, R2 unique + #------------------------------------ + elif len(read2_maps) == 2: + # 2 + if read2_maps[1][3] == '-': new_alignment.flag = new_alignment.flag | 0x20 + # 3 + new_alignment.tid = name_to_id[read2_maps[1][0]] #recommend to set the RNAME of unmapped read to its mate's + # 4 + new_alignment.pos = read2_maps[1][1] #recommend to set the POS of unmapped read to its mate's + # 5 + new_alignment.mapq = old_alignment.mapq + # 6 + new_alignment.cigar = old_alignment.cigar + # 7 + new_alignment.rnext = name_to_id[read2_maps[1][0]] + # 8 + new_alignment.pnext = read2_maps[1][1] #start + # 9 + new_alignment.tlen = 0 + + NU += 1 + if addtag: new_alignment.set_tag(tag="NU", value=0) + OUT_FILE.write(new_alignment) + continue + + #------------------------------------ + # R1 unmapped, R2 multiple + #------------------------------------ + else: + # 2 + if read2_maps[1][3] == '-': new_alignment.flag = new_alignment.flag | 0x20 + # 2 + new_alignment.flag = new_alignment.flag | 0x100 + # 3 + new_alignment.tid = name_to_id[read2_maps[1][0]] + # 4 + new_alignment.pos = read2_maps[1][1] + # 5 + new_alignment.mapq = old_alignment.mapq + # 6 + new_alignment.cigar = old_alignment.cigar + # 7 + new_alignment.rnext = name_to_id[read2_maps[1][0]] + # 8 + new_alignment.pnext = read2_maps[1][1] #start + # 9 + new_alignment.tlen = 0 + + NM += 1 + if addtag: new_alignment.set_tag(tag="NM", value=0) + OUT_FILE.write(new_alignment) + continue + + #================================== + # R1 is originally mapped + #================================== + else: + try: + read1_chr = samfile.getrname(old_alignment.tid) + read1_strand = '-' if old_alignment.is_reverse else '+' + read1_start = old_alignment.pos + read1_end = old_alignment.aend + read1_maps = map_coordinates(mapping, read1_chr, read1_start, read1_end, read1_strand) + except: + read1_maps = None + + if not old_alignment.mate_is_unmapped: + try: + read2_chr = samfile.getrname(old_alignment.rnext) + read2_strand = '-' if old_alignment.mate_is_reverse else '+' + read2_start = old_alignment.pnext + read2_end = read2_start + 1 + read2_maps = map_coordinates(mapping, read2_chr, read2_start, read2_end, read2_strand) + # [('chr1', 246974830, 246974833, '+' ), ('chr1', 248908207, 248908210, '+' )] + except: + read2_maps = None + + + #------------------------------------ + # R1 unmapped (failed to liftover) + #------------------------------------ + if read1_maps is None: + # 2 update flag (0x4: segment unmapped) + new_alignment.flag = new_alignment.flag | 0x4 + # 3 + new_alignment.tid = -1 + # 4 + new_alignment.pos = 0 + # 5 + new_alignment.mapq = 255 + # 6 + new_alignment.cigar = old_alignment.cigar + # 7 + new_alignment.rnext = -1 + # 8 + new_alignment.pnext = 0 + # 9 + new_alignment.tlen = 0 + + + # (1) read2 is unmapped before conversion + if old_alignment.mate_is_unmapped: + NN += 1 + if addtag: new_alignment.set_tag(tag="NN", value=0) + OUT_FILE.write(new_alignment) + continue + + # (2) read2 is unmapped after conversion + elif read2_maps is None: + # 2 + new_alignment.flag = new_alignment.flag | 0x8 + + NN += 1 + if addtag: new_alignment.set_tag(tag="NN", value=0) + OUT_FILE.write(new_alignment) + continue + + # (3) read2 is unique mapped + elif len(read2_maps) == 2: + # 2 + if read2_maps[1][3] == '-': new_alignment.flag = new_alignment.flag | 0x20 + # 3 + new_alignment.tid = name_to_id[read2_maps[1][0]] #recommend to set the RNAME of unmapped read to its mate's + # 4 + new_alignment.pos = read2_maps[1][1] #recommend to set the POS of unmapped read to its mate's + # 5 + new_alignment.mapq = old_alignment.mapq + # 6 + new_alignment.cigar = old_alignment.cigar + # 7 + new_alignment.rnext = name_to_id[read2_maps[1][0]] + # 8 + new_alignment.pnext = read2_maps[1][1] #start + # 9 + new_alignment.tlen = 0 + + NU += 1 + if addtag: new_alignment.set_tag(tag="NU", value=0) + OUT_FILE.write(new_alignment) + continue + + # (4) read2 is multiple mapped + else: + # 2 + if read2_maps[1][3] == '-': new_alignment.flag = new_alignment.flag | 0x20 + # 2 + new_alignment.flag = new_alignment.flag | 0x100 + # 3 + new_alignment.tid = name_to_id[read2_maps[1][0]] + # 4 + new_alignment.pos = read2_maps[1][1] + # 5 + new_alignment.mapq = 255 # mapq not available + # 6 + new_alignment.cigar = old_alignment.cigar + # 7 + new_alignment.rnext = name_to_id[read2_maps[1][0]] + # 8 + new_alignment.pnext = read2_maps[1][1] #start + # 9 + new_alignment.tlen = 0 + + NM += 1 + if addtag:new_alignment.set_tag(tag="NM", value=0) + OUT_FILE.write(new_alignment) + continue + + #------------------------------------ + # R1 uniquely mapped + #------------------------------------ + elif len(read1_maps) == 2: + + if read1_maps[1][3] == '-': + new_alignment.flag = new_alignment.flag | 0x10 + + if read1_maps[0][3] != read1_maps[1][3]: # opposite strand + # 6 + new_alignment.cigar = old_alignment.cigar[::-1] #reverse cigar tuple + # 10 + new_alignment.seq = revcomp_DNA(old_alignment.seq) #reverse complement read sequence + # 11 + new_alignment.qual = old_alignment.qual[::-1] #reverse quality string + elif read1_maps[0][3] == read1_maps[1][3]: # same strand + # 6 + new_alignment.cigar = old_alignment.cigar + + # 3 + new_alignment.tid = name_to_id[read1_maps[1][0]] #chrom + # 4 + new_alignment.pos = read1_maps[1][1] #start + # 5 + new_alignment.mapq = old_alignment.mapq + + # (1) R2 unmapped before or after conversion + if (old_alignment.mate_is_unmapped) or (read2_maps is None): + # 2 + new_alignment.flag = new_alignment.flag | 0x8 + # 7 + new_alignment.rnext = name_to_id[read1_maps[1][0]] + # 8 + new_alignment.pnext = read1_maps[1][1] + # 9 + new_alignment.tlen = 0 + + UN += 1 + if addtag: new_alignment.set_tag(tag="UN", value=0) + OUT_FILE.write(new_alignment) + continue + + # (2) R2 is unique mapped + elif len(read2_maps)==2: + # 2 + if read2_maps[1][3] == '-': new_alignment.flag = new_alignment.flag | 0x20 + # 7 + new_alignment.rnext = name_to_id[read2_maps[1][0]] #chrom + # 8 + new_alignment.pnext = read2_maps[1][1] + # 9 + new_alignment.tlen = abs(new_alignment.pos - new_alignment.pnext) -1 - old_alignment.alen + # 2 + if (read2_maps[1][3] != read1_maps[1][3]) and (new_alignment.tlen <= IS_size + fold * IS_std) and (new_alignment.tlen >= IS_size - fold * IS_std): + new_alignment.flag = new_alignment.flag | 0x2 + + UU += 1 + if addtag: new_alignment.set_tag(tag="UU", value=0) + OUT_FILE.write(new_alignment) + continue + + # (3) R2 is multiple mapped + else: + # 2 (strand) + if read2_maps[1][3] == '-': new_alignment.flag = new_alignment.flag | 0x20 + # 2 (secondary alignment) + new_alignment.flag = new_alignment.flag | 0x100 + # 7 + new_alignment.rnext = name_to_id[read2_maps[1][0]] #chrom + # 8 + new_alignment.pnext = read2_maps[1][1] #start + # 9 + new_alignment.tlen = abs(new_alignment.pos - new_alignment.pnext) -1 - old_alignment.alen + + UM += 1 + if addtag: new_alignment.set_tag(tag="UM", value=0) + OUT_FILE.write(new_alignment) + continue + + #------------------------------------ + # R1 multiple mapped + #----------------------------------- + elif len(read1_maps) > 2 and len(read1_maps) % 2 ==0: + # 2 + new_alignment.flag = new_alignment.flag | 0x100 + # 2 + if read1_maps[1][3] == '-': + new_alignment.flag = new_alignment.flag | 0x10 + + if read1_maps[0][3] != read1_maps[1][3]: + # 6 + new_alignment.cigar = old_alignment.cigar[::-1] #reverse cigar tuple + # 10 + new_alignment.seq = revcomp_DNA(old_alignment.seq) #reverse complement read sequence + # 11 + new_alignment.qual = old_alignment.qual[::-1] #reverse quality string + elif read1_maps[0][3] == read1_maps[1][3]: + new_alignment.cigar = old_alignment.cigar + # 3 + new_alignment.tid = name_to_id[read1_maps[1][0]] #chrom + # 4 + new_alignment.pos = read1_maps[1][1] #start + # 5 + new_alignment.mapq = 255 + + + # (1) R2 is unmapped + if (old_alignment.mate_is_unmapped) or (read2_maps is None): + # 2 + new_alignment.flag = new_alignment.flag | 0x8 + # 7 + new_alignment.rnext = name_to_id[read1_maps[1][0]] + # 8 + new_alignment.pnext = read1_maps[1][1] + # 9 + new_alignment.tlen = 0 + + MN += 1 + if addtag: new_alignment.set_tag(tag="MN", value=0) + OUT_FILE.write(new_alignment) + continue + + # (2) read2 is unique mapped + elif len(read2_maps)==2: + # 2 + if read2_maps[1][3] == '-': new_alignment.flag = new_alignment.flag | 0x20 + # 7 + new_alignment.rnext = name_to_id[read2_maps[1][0]] #chrom + # 8 + new_alignment.pnext = read2_maps[1][1] + # 9 + new_alignment.tlen = abs(new_alignment.pos - new_alignment.pnext) -1 - old_alignment.alen + + MU += 1 + if addtag: new_alignment.set_tag(tag="MU", value=0) + OUT_FILE.write(new_alignment) + continue + + # (3) R2 is multiple mapped + else: + # 2 (strand) + if read2_maps[1][3] == '-': new_alignment.flag = new_alignment.flag | 0x20 + # 2 (secondary alignment) + new_alignment.flag = new_alignment.flag | 0x100 + # 7 + new_alignment.rnext = name_to_id[read2_maps[1][0]] #chrom + # 8 + new_alignment.pnext = read2_maps[1][1] #start + # 9 + new_alignment.tlen = abs(new_alignment.pos - new_alignment.pnext) -1 - old_alignment.alen + + MM += 1 + if addtag: new_alignment.set_tag(tag="MM", value=0) + OUT_FILE.write(new_alignment) + continue + else: + #old_alignment.tid = name_to_id[samfile.getrname(old_alignment.tid)] + OUT_FILE_UNMAP.write(old_alignment) + failed += 1 + + # Singel end sequencing + else: + # (1) originally unmapped + if old_alignment.is_unmapped: + SN += 1 + if addtag: old_alignment.set_tag(tag="SN",value=0) + OUT_FILE.write(old_alignment) + continue + else: + new_alignment.flag = 0x0 + read_chr = samfile.getrname(old_alignment.tid) + read_strand = '-' if old_alignment.is_reverse else '+' + read_start = old_alignment.pos + read_end = old_alignment.aend + read_maps = map_coordinates(mapping, read_chr, read_start, read_end, read_strand) + + # (2) unmapped afte liftover + if read_maps is None: + # 1 + new_alignment.qname = old_alignment.qname + # 2 + new_alignment.flag = new_alignment.flag | 0x4 + # 3 + new_alignment.tid = -1 + # 4 + new_alignment.pos = 0 + # 5 + new_alignment.mapq = 255 + # 6 + new_alignment.cigar= old_alignment.cigar + # 7 + new_alignment.rnext = -1 + # 8 + new_alignment.pnext = 0 + # 9 + new_alignment.tlen = 0 + # 10 + new_alignment.seq = old_alignment.seq + # 11 + new_alignment.qual = old_alignment.qual + # 12 + new_alignment.tags = old_alignment.tags + + SN += 1 + if addtag: new_alignment.set_tag(tag="SN",value=0) + OUT_FILE.write(new_alignment) + continue + + # (3) unique mapped + if len(read_maps)==2: + # 1 + new_alignment.qname = old_alignment.qname + # 2 + if read_maps[1][3] == '-': + new_alignment.flag = new_alignment.flag | 0x10 + if read_maps[0][3] != read_maps[1][3]: + # 6 + new_alignment.cigar = old_alignment.cigar[::-1] #reverse cigar tuple + # 10 + new_alignment.seq = revcomp_DNA(old_alignment.seq) #reverse complement read sequence + # 11 + new_alignment.qual = old_alignment.qual[::-1] #reverse quality string + else: + # 6 + new_alignment.cigar = old_alignment.cigar + # 10 + new_alignment.seq = old_alignment.seq + # 11 + new_alignment.qual = old_alignment.qual + + # 3 + new_alignment.tid = name_to_id[read_maps[1][0]] + # 4 + new_alignment.pos = read_maps[1][1] + # 5 + new_alignment.mapq = old_alignment.mapq + # 7 + new_alignment.rnext = -1 + # 8 + new_alignment.pnext = 0 + # 9 + new_alignment.tlen = 0 + + SU += 1 + if addtag: new_alignment.set_tag(tag="SU",value=0) + OUT_FILE.write(new_alignment) + continue + + # (4) multiple mapped + if len(read_maps) > 2 and len(read_maps) % 2 ==0: + + # 1 + new_alignment.qname = old_alignment.qname + new_alignment.flag = new_alignment.flag | 0x100 + # 2 + if read_maps[1][3] == '-': + new_alignment.flag = new_alignment.flag | 0x10 + if read_maps[0][3] != read_maps[1][3]: + # 6 + new_alignment.cigar = old_alignment.cigar[::-1] #reverse cigar tuple + # 10 + new_alignment.seq = revcomp_DNA(old_alignment.seq) #reverse complement read sequence + # 11 + new_alignment.qual = old_alignment.qual[::-1] #reverse quality string + else: + # 6 + new_alignment.cigar = old_alignment.cigar + # 10 + new_alignment.seq = old_alignment.seq + # 11 + new_alignment.qual = old_alignment.qual + + # 3 + new_alignment.tid = name_to_id[read_maps[1][0]] + # 4 + new_alignment.pos = read_maps[1][1] + # 5 + new_alignment.mapq = old_alignment.mapq + # 7 + new_alignment.rnext = -1 + # 8 + new_alignment.pnext = 0 + # 9 + new_alignment.tlen = 0 + + SM += 1 + if addtag: new_alignment.set_tag(tag="SM",value=0) + OUT_FILE.write(new_alignment) + continue + except StopIteration: + printlog(["Done!"]) + OUT_FILE.close() + + if outfile_prefix is not None: + if bam_format: + try: + printlog (['Sort "%s" and save as "%s"' % (outfile_prefix + '.bam', outfile_prefix + '.sorted.bam')]) + pysam.sort("-o", outfile_prefix + '.sorted.bam', outfile_prefix + '.bam') + except: + printlog(["Warning: ","output BAM file was NOT sorted"]) + try: + printlog (['Index "%s" ...' % (outfile_prefix + '.sorted.bam')]) + pysam.index(outfile_prefix + '.sorted.bam',outfile_prefix + '.sorted.bam.bai') + except: + printlog(["Warning: ","output BAM file was NOT indexed."]) + + print("Total alignments:" + str(total_item-1)) + print("\tQC failed: " + str(QF)) + if max(NN,NU, NM, UN, UU, UM, MN, MU, MM) > 0: + + print("\tR1 unique, R2 unique (UU): " + str(UU)) + print("\tR1 unique, R2 unmapp (UN): " + str(UN)) + print("\tR1 unique, R2 multiple (UM): " + str(UM)) + + print("\tR1 multiple, R2 multiple (MM): " + str(MM)) + print("\tR1 multiple, R2 unique (MU): " + str(MU)) + print("\tR1 multiple, R2 unmapped (MN): " + str(MN)) + + print("\tR1 unmap, R2 unmap (NN): " + str(NN)) + print("\tR1 unmap, R2 unique (NU): " + str(NU)) + print("\tR1 unmap, R2 multiple (NM): " + str(NM)) + if max(SN,SU,SM) > 0: + print("\tUniquley mapped (SU): " + str(SU)) + print("\tMultiple mapped (SM): " + str(SM)) + print("\tUnmapped (SN): " + str(SN)) + + +def crossmap_wig_file(mapping, in_file, out_prefix, taget_chrom_size, in_format, binSize=100000): + ''' + Convert genome coordinates (in wiggle/bigwig format) between assemblies. + wiggle format: http://genome.ucsc.edu/goldenPath/help/wiggle.html + bigwig format: http://genome.ucsc.edu/goldenPath/help/bigWig.html + ''' + + OUT_FILE1 = open(out_prefix + '.bgr','w') # original bgr file + OUT_FILE2 = open(out_prefix + '.sorted.bgr','w') # sorted bgr file + OUT_FILE3 = pyBigWig.open(out_prefix + '.bw', "w") # bigwig file + + if in_format.upper() == "WIGGLE": + printlog (["Liftover wiggle file:", in_file, '==>', out_prefix + '.bgr']) + + for chr, start, end, strand, score in wiggleReader (in_file): + #print chr,start,end,score + # map_coordinates(mapping, q_chr, q_start, q_end, q_strand = '+', print_match=False): + maps = map_coordinates(mapping, chr, start, end, '+') + if maps is None: + continue + if len(maps) == 2: + print('\t'.join([str(i) for i in [maps[1][0],maps[1][1],maps[1][2], score]]), file=OUT_FILE1) + else: + continue + maps[:]=[] + OUT_FILE1.close() + + printlog (["Merging overlapped entries in bedGraph file ..."]) + for (chr, start, end, score) in bgrMerge.merge(out_prefix + '.bgr'): + print('\t'.join([str(i) for i in (chr, start, end, score )]), file=OUT_FILE2) + OUT_FILE2.close() + + os.remove(out_prefix + '.bgr') #remove .bgr, keep .sorted.bgr + + # add header to bigwig file + printlog (["Writing header to \"%s\" ..." % (out_prefix + '.bw') ]) + target_chroms_sorted = [(k,taget_chrom_size[k]) for k in sorted(taget_chrom_size.keys())] + OUT_FILE3.addHeader(target_chroms_sorted) + + printlog (["Writing entries to \"%s\" ..." % (out_prefix + '.bw') ]) + # add entries to bigwig file + for line in ireader.reader(out_prefix + '.sorted.bgr'): + r_chr,r_st,r_end,r_value = line.split() + OUT_FILE3.addEntries([r_chr], [int(r_st)], ends=[int(r_end)], values=[float(r_value)]) + + OUT_FILE3.close() + + elif in_format.upper() == "BIGWIG": + + printlog (["Liftover bigwig file:", in_file, '==>', out_prefix + '.bgr']) + for chr, start, end, score in bigwigReader(in_file, bin_size = binSize ): + maps = map_coordinates(mapping, chr, start, end, '+') + try: + if maps is None: continue + if len(maps) == 2: + print('\t'.join([str(i) for i in [maps[1][0],maps[1][1],maps[1][2], score]]), file=OUT_FILE1) + else: + continue + except: + continue + maps[:]=[] + OUT_FILE1.close() + + printlog (["Merging overlapped entries in bedGraph file ..."]) + for (chr, start, end, score) in bgrMerge.merge(out_prefix + '.bgr'): + print('\t'.join([str(i) for i in (chr, start, end, score )]), file=OUT_FILE2) + OUT_FILE2.close() + os.remove(out_prefix + '.bgr') #remove .bgr, keep .sorted.bgr + + # add header to bigwig file + printlog (["Writing header to \"%s\" ..." % (out_prefix + '.bw') ]) + target_chroms_sorted = [(k,taget_chrom_size[k]) for k in sorted(taget_chrom_size.keys())] + OUT_FILE3.addHeader(target_chroms_sorted) + + # add entries to bigwig file + printlog (["Writing entries to \"%s\" ..." % (out_prefix + '.bw') ]) + for line in ireader.reader(out_prefix + '.sorted.bgr'): + r_chr,r_st,r_end,r_value = line.split() + OUT_FILE3.addEntries([r_chr], [int(r_st)], ends=[int(r_end)], values=[float(r_value)]) + + OUT_FILE3.close() + else: + raise Exception("Unknown foramt. Must be 'wiggle' or 'bigwig'") + + +def general_help(): + desc="""CrossMap is a program for convenient conversion of genome coordinates and genome \ +annotation files between assemblies (eg. lift from human hg18 to hg19 or vice versa). \ +It supports file in BAM, SAM, BED, Wiggle, BigWig, GFF, GTF and VCF format.""" + + print("Program: %s (v%s)" % ("CrossMap", __version__), file=sys.stderr) + print("\nDescription: \n%s" % '\n'.join(' '+i for i in wrap(desc,width=80)), file=sys.stderr) + print("\nUsage: CrossMap.py [options]\n", file=sys.stderr) + for k in sorted(commands): + print(' ' + k + '\t' + commands[k], file=sys.stderr) + print(file=sys.stderr) + +def bed_help(): + msg =[ + ('Usage:', "CrossMap.py bed input_chain_file input_bed_file [output_file]"), + ('Description:', "\"input_chain_file\" and \"input_bed_file\" can be regular or compressed (*.gz, *.Z, *.z, *.bz, *.bz2, *.bzip2) file, local file or URL (http://, https://, ftp://) pointing to remote file. BED format file must have at least 3 columns (chrom, start, end) and no more than 12 columns. If no \"output_file\" is specified, output will be directed to the screen (console). BED format: http://genome.ucsc.edu/FAQ/FAQformat.html#format1"), + ('Example:', "CrossMapy.py bed hg18ToHg19.over.chain.gz test.hg18.bed test.hg19.bed # write output to \"test.hg19.bed\""), + ('Example:', "CrossMapy.py bed hg18ToHg19.over.chain.gz test.hg18.bed # write output to screen"), + ] + for i,j in msg: + print('\n' + i + '\n' + '\n'.join([' ' + k for k in wrap(j,width=80)]), file=sys.stderr) + +def gff_help(): + msg =[ + ('Usage:', "CrossMap.py gff input_chain_file input_gff_file output_file"), + ('Description:', "\"input_chain_file\" can be regular or compressed (*.gz, *.Z, *.z, *.bz, *.bz2, *.bzip2) file, local file or URL (http://, https://, ftp://) pointing to remote file. Input file must be in GFF or GTF format. GFF format: http://genome.ucsc.edu/FAQ/FAQformat.html#format3 GTF format: http://genome.ucsc.edu/FAQ/FAQformat.html#format4"), + ('Example:', "CrossMap.py gff hg19ToHg18.over.chain.gz test.hg19.gtf test.hg18.gtf # write output to \"test.hg18.gff\""), + ('Example:', "CrossMap.py gff hg19ToHg18.over.chain.gz test.hg19.gtf # write output to screen"), + ] + for i,j in msg: + print('\n' + i + '\n' + '\n'.join([' ' + k for k in wrap(j,width=80)]), file=sys.stderr) + +def wig_help(): + msg =[ + ('Usage:', "CrossMap.py wig input_chain_file input_wig_file output_prefix"), + ('Description:', "\"input_chain_file\" can be regular or compressed (*.gz, *.Z, *.z, *.bz, *.bz2, *.bzip2) file, local file or URL (http://, https://, ftp://) pointing to remote file. Both \"variableStep\" and \"fixedStep\" wiggle lines are supported. Wiggle format: http://genome.ucsc.edu/goldenPath/help/wiggle.html"), + ('Example:', "CrossMapy.py wig hg18ToHg19.over.chain.gz test.hg18.wig test.hg19"), + ] + for i,j in msg: + print('\n' + i + '\n' + '\n'.join([' ' + k for k in wrap(j,width=80)]), file=sys.stderr) +def bigwig_help(): + msg =[ + ('Usage:', "CrossMap.py bigwig input_chain_file input__bigwig_file output_prefix"), + ('Description:', "\"input_chain_file\" can be regular or compressed (*.gz, *.Z, *.z, *.bz, *.bz2, *.bzip2) file, local file or URL (http://, https://, ftp://) pointing to remote file. Bigwig format: http://genome.ucsc.edu/goldenPath/help/bigWig.html"), + ('Example:', "CrossMapy.py bigwig hg18ToHg19.over.chain.gz test.hg18.bw test.hg19"), + ] + for i,j in msg: + print('\n' + i + '\n' + '\n'.join([' ' + k for k in wrap(j,width=80)]), file=sys.stderr) + +def bam_help(): + usage="CrossMap.py bam -a input_chain_file input_bam_file output_file [options] " + import optparse + parser.print_help() + +def vcf_help(): + msg =[ + ("usage:","CrossMap.py vcf input_chain_file input_VCF_file ref_genome_file output_file"), + ("Description:", "\"input_chain_file\" and \"input_VCF_file\" can be regular or compressed (*.gz, *.Z, *.z, *.bz, *.bz2, *.bzip2) file, local file or URL (http://, https://, ftp://) pointing to remote file. \"ref_genome_file\" is genome sequence file of 'target assembly' in FASTA format."), + ("Example:", " CrossMap.py vcf hg19ToHg18.over.chain.gz test.hg19.vcf hg18.fa test.hg18.vcf"), + ] + for i,j in msg: + print('\n' + i + '\n' + '\n'.join([' ' + k for k in wrap(j,width=80)]), file=sys.stderr) + + +if __name__=='__main__': + + # test read_chain_file() + #(mapTree,targetChromSizes, sourceChromSizes) = read_chain_file(sys.argv[1], print_table=True) + + #q_chr, q_start, q_end, q_strand = '+', print_match=False): + #map_coordinates(mapTree, 'chr1', 45953452, 45953456, '+', print_match=True) + + + #a= sam_header.bam_header_generator(chrom_size = targetChromSizes, prog_name="CrossMap",prog_ver = __version__, format_ver=1.0,sort_type = 'coordinate',co=['a','b','c']) + #crossmap_bed_file(mapTree, 'test.hg18.bed3',outfile='aa') + #crossmap_bed_file(mapTree, 'test.bed') + #crossmap_gff_file(mapTree,'test.hg18.gtf',outfile = 'aa') + + + #crossmap_bam_file(mapTree, targetChromSizes, sys.argv[1], 'eg.abnormal.sam','out') + #printlog (['Sort output bam file ...']) + #pysam.sort('-m','1000000000','out.bam','out.sorted') + #printlog (['Index bam file ...']) + #pysam.index('out.sorted.bam','out.sorted.bam.bai') + + #crossmap_wig_file(mapTree, 'GSM686950_reverse.hg18.bw', 'GSM686950_reverse.hg19', sourceChromSizes, targetChromSizes, in_format = 'bigwig') + + #parser = optparse.OptionParser() + #parser.add_option("-i","--input-sam",action="store",type="string",dest="input_sam_file", help="BAM/SAM format file.") + #parser.add_option("-o","--out-file",action="store",type="string",dest="output_sam_file", help="Prefix of output files. Foramt is determined from input: SAM <=> SAM, BAM <=> BAM") + #parser.add_option("-m","--insert-mean",action="store",type="float",dest="insert_size", default=200.0, help="Average insert size of pair-end sequencing (bp). Used to tell wheather a mapped pair is \"proper pair\" or not. [default=%default]") + #parser.add_option("-s","--insert-stdev",action="store",type="float",dest="insert_size_stdev", default=30.0, help="Stanadard deviation of insert size. [default=%default]" ) + #parser.add_option("-t","--times-of-stdev",action="store",type="float",dest="insert_size_fold", default=3.0, help="A mapped pair is considered as \"proper pair\" if both ends mapped to different strand and the distance between them is less then '-t' * stdev from the mean. [default=%default]") + #(options,args)=parser.parse_args() + + #print options + #print args + + + commands = { + 'bed':'convert genome cooridnate or annotation file in BED, bedGraph or other BED-like format.', + 'bam':'convert alignment file in BAM or SAM format.', + 'gff':'convert genome cooridnate or annotation file in GFF or GTF format.', + 'wig':'convert genome coordinate file in Wiggle, or bedGraph format.', + 'bigwig':'convert genome coordinate file in BigWig format.', + 'vcf':'convert genome coordinate file in VCF format.' + } + kwds = list(commands.keys()) + + + if len(sys.argv) == 1: + general_help() + sys.exit(0) + elif len(sys.argv) >=2: + # deal with bed input + if sys.argv[1].lower() == 'bed': + if len(sys.argv) == 4: + chain_file = sys.argv[2] + in_file = sys.argv[3] + out_file = None + (mapTree,targetChromSizes, sourceChromSizes) = read_chain_file(chain_file, print_table = False) + crossmap_bed_file(mapTree, in_file, out_file) + + elif len(sys.argv) == 5: + chain_file = sys.argv[2] + in_file = sys.argv[3] + out_file = sys.argv[4] + (mapTree,targetChromSizes, sourceChromSizes) = read_chain_file(chain_file) + crossmap_bed_file(mapTree, in_file, out_file) + else: + bed_help() + sys.exit(0) + elif sys.argv[1].lower() == 'gff': + if len(sys.argv) == 4: + chain_file = sys.argv[2] + in_file = sys.argv[3] + (mapTree,targetChromSizes, sourceChromSizes) = read_chain_file(chain_file) + crossmap_gff_file(mapTree, in_file, None) + elif len(sys.argv) == 5: + chain_file = sys.argv[2] + in_file = sys.argv[3] + out_file = sys.argv[4] + (mapTree,targetChromSizes, sourceChromSizes) = read_chain_file(chain_file) + crossmap_gff_file(mapTree, in_file, out_file) + else: + gff_help() + sys.exit(0) + elif sys.argv[1].lower() == 'wig': + if len(sys.argv) == 5: + chain_file = sys.argv[2] + in_file = sys.argv[3] + out_file = sys.argv[4] + (mapTree,targetChromSizes, sourceChromSizes) = read_chain_file(chain_file) + crossmap_wig_file(mapTree, in_file, out_file, targetChromSizes, in_format = 'wiggle') + else: + wig_help() + sys.exit(0) + elif sys.argv[1].lower() == 'bigwig': + if len(sys.argv) == 5: + chain_file = sys.argv[2] + + in_file = sys.argv[3] + try: + bw = pyBigWig.open(in_file) + except: + print ("\nPlease check if \"%s\" is in bigWig format!\n" % in_file, file=sys.stderr) + sys.exit(0) + + out_file = sys.argv[4] + (mapTree,targetChromSizes, sourceChromSizes) = read_chain_file(chain_file) + crossmap_wig_file(mapTree, in_file, out_file, targetChromSizes, in_format = 'bigwig') + else: + bigwig_help() + sys.exit(0) + elif sys.argv[1].lower() == 'bam': + #def crossmap_bam_file(mapping, chainfile, infile, outfile_prefix, chrom_size, IS_size=200, IS_std=30, fold=3): + usage="CrossMap.py bam input_chain_file input_bam_file output_file [options]\nNote: If output_file == STDOUT or -, CrossMap will write BAM file to the screen" + parser = optparse.OptionParser(usage, add_help_option=False) + parser.add_option("-m", "--mean", action="store",type="float",dest="insert_size", default=200.0, help="Average insert size of pair-end sequencing (bp). [default=%default]") + parser.add_option("-s", "--stdev", action="store",type="float",dest="insert_size_stdev", default=30.0, help="Stanadard deviation of insert size. [default=%default]" ) + parser.add_option("-t", "--times", action="store",type="float",dest="insert_size_fold", default=3.0, help="A mapped pair is considered as \"proper pair\" if both ends mapped to different strand and the distance between them is less then '-t' * stdev from the mean. [default=%default]") + parser.add_option("-a","--append-tags",action="store_true",dest="add_tags",help="Add tag to each alignment.") + (options,args)=parser.parse_args() + + if len(args) >= 3: + print("Insert size = %f" % (options.insert_size), file=sys.stderr) + print("Insert size stdev = %f" % (options.insert_size_stdev), file=sys.stderr) + print("Number of stdev from the mean = %f" % (options.insert_size_fold), file=sys.stderr) + if options.add_tags: + print("Add tags to each alignment = %s" % ( options.add_tags), file=sys.stderr) + else: + print("Add tags to each alignment = %s" % ( False), file=sys.stderr) + chain_file = args[1] + in_file = args[2] + out_file = args[3] if len(args) >= 4 else None + (mapTree,targetChromSizes, sourceChromSizes) = read_chain_file(chain_file) + + if out_file in ["STDOUT","-"]: + out_file = None + if options.add_tags: + crossmap_bam_file(mapping = mapTree, chainfile = chain_file, infile = in_file, outfile_prefix = out_file, chrom_size = targetChromSizes, IS_size=options.insert_size, IS_std=options.insert_size_stdev, fold=options.insert_size_fold,addtag=True) + else: + crossmap_bam_file(mapping = mapTree, chainfile = chain_file, infile = in_file, outfile_prefix = out_file, chrom_size = targetChromSizes, IS_size=options.insert_size, IS_std=options.insert_size_stdev, fold=options.insert_size_fold,addtag=False) + else: + parser.print_help() + elif sys.argv[1].lower() == 'vcf': + if len(sys.argv) == 6: + chain_file = sys.argv[2] + in_file = sys.argv[3] + genome_file = sys.argv[4] + out_file = sys.argv[5] + (mapTree,targetChromSizes, sourceChromSizes) = read_chain_file(chain_file) + crossmap_vcf_file(mapping = mapTree, infile= in_file, outfile = out_file, liftoverfile = sys.argv[2], refgenome = genome_file) + else: + vcf_help() + sys.exit(0) + else: + general_help() + sys.exit(0) + + + + + diff --git a/bin/Modules/CrossMapper.py b/bin/Modules/CrossMapper.py new file mode 100644 index 0000000..74ae97e --- /dev/null +++ b/bin/Modules/CrossMapper.py @@ -0,0 +1,40 @@ +import urllib.request +import os +from Modules import CrossMap + + +class CrossMapper: + def __init__(self, org, wd, out, is_dir): + self.org = org + if is_dir: + self.infile = os.path.join( wd + "/temp/" + org + ".gtf") + else: + self.infile = os.path.join(wd+"/data/temp/"+org+".gtf") + self.outfile = os.path.join(out+"/" + org + "_mapped.gtf") + self.chainfile = self.get_chain_file(org, wd, is_dir) + (mapTree, targetChromSizes, sourceChromSizes) = CrossMap.read_chain_file(self.chainfile) + CrossMap.crossmap_gff_file(mapTree, self.infile, self.outfile) + + def get_chain_file(self, org, wd, isdir): + + # Defines the Chain files for different conversions. + + if org == "hg19": + if isdir: + file_link = os.path.join(wd+"temp/hg38tohg19.over.chain.gz") + else: + file_link = os.path.join(wd + "/data/temp/hg38tohg19.over.chain.gz" ) + urllib.request.urlretrieve("http://hgdownload.soe.ucsc.edu/goldenPath/hg38/" + "liftOver/hg38ToHg19.over.chain.gz", + file_link) + return file_link + + elif org == "mm9": + if isdir: + file_link = os.path.join(wd+"temp/mm10ToMm9.over.chain.gz") + else: + file_link = os.path.join(wd + "/data/temp/hg38tohg19.over.chain.gz" ) + urllib.request.urlretrieve("http://hgdownload.soe.ucsc.edu/goldenPath/mm10/" + "liftOver/mm10ToMm9.over.chain.gz", + file_link) + return file_link diff --git a/bin/Modules/SaveResults.py b/bin/Modules/SaveResults.py index e13aa6a..5425bd3 100644 --- a/bin/Modules/SaveResults.py +++ b/bin/Modules/SaveResults.py @@ -4,14 +4,19 @@ class ResultSaver: - def __init__(self, results, organism, tissue): + def __init__(self, results, organism, wd, mapped, is_data_dir, tissue, out): print("Save results to File !") self.path = "" - if tissue: - self.path = os.path.join("./"+organism+"_filtered.gtf") + if mapped: + if is_data_dir: + self.path = os.path.join(wd + "temp/" + organism + ".gtf") + else: + self.path = os.path.join( wd + "data/temp/" + organism + ".gtf" ) + elif tissue: + self.path = os.path.join(out+"/"+organism+"_filtered.gtf") else: - self.path = os.path.join("./"+organism+".gtf") + self.path = os.path.join(out+"/"+organism+".gtf") with open(self.path, "w") as file: write_it = csv.writer(file, delimiter='\t') diff --git a/bin/Modules/ucsc/bigBedToBed b/bin/Modules/ucsc/bigBedToBed old mode 100644 new mode 100755 diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index 6f0e11c..131b853 100755 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -1,23 +1,37 @@ -#!/usr/bin/env python3 - import argparse from Modules.Ensembl.Ensembl import Ensembl from Modules.ucsc.ucsc import UcscGtf from Modules.Uniquifier import UniqueFilter from Modules.SaveResults import ResultSaver +from Modules.CrossMapper import CrossMapper import os import json def check_for_local_folder(wd): - if not os.path.isdir(os.path.join(wd+"/EnsemblData")): + if not os.path.isdir(os.path.join(wd+"/data/EnsemblData")): os.mkdir(os.path.join(wd+"/data/EnsemblData")) if not os.path.isdir(os.path.join(wd+"/data/UCSCData")): os.mkdir(os.path.join(wd+"/data/UCSCData")) + if not os.path.isdir(os.path.join(wd+"/data/temp")): + os.mkdir(os.path.join(wd+"/data/temp")) + + +def check_for_data_dir(data_dir): + + if not os.path.isdir(os.path.join(data_dir+"/EnsemblData")): + os.mkdir(os.path.join(data_dir+"/EnsemblData")) + + if not os.path.isdir(os.path.join(data_dir+"/UCSCData")): + os.mkdir(os.path.join(data_dir + "/UCSCData")) + + if not os.path.isdir(os.path.join(data_dir+"/temp")): + os.mkdir(os.path.join(data_dir+"/temp")) + def check_filter(tissue_cmd, org, wd): path_to_config = os.path.join(wd + "/config/celltypes_" + org + ".json") @@ -36,9 +50,29 @@ def check_filter(tissue_cmd, org, wd): return False -def main_script(org, wd, data_dir, tissuetype=None): +def cross_map(data_dir, org): + pass + + +def check_organism(org): + if org == "hg38": + return "homo_sapiens", False + if org == "hg19": + print("Older assembly Version detected: hg19 -> Crossmapping result from hg38") + return "homo_sapiens", True + elif org == "mm10": + return "mus_musculus", False + elif org == "mm9": + print("Older assembly Version detected: mm9 -> Crossmapping result from mm10") + return "mus_musculus", True + + +def main_script(organism, wd, data_dir, out, tissuetype=None): + (org, x_mappable) = check_organism(organism) if not data_dir: check_for_local_folder(wd) + else: + check_for_data_dir(data_dir) if check_filter(tissuetype, org, wd): tissues = tissuetype print("Filter detected !") @@ -50,19 +84,30 @@ def main_script(org, wd, data_dir, tissuetype=None): ense = Ensembl(org, wd, data_dir) print("Getting Unique Results") unique_filter = UniqueFilter(ense.get_gtf(), ucsc.get_gtf(), tissues) - ResultSaver(unique_filter.get_results(), org, tissues) + if data_dir: + ResultSaver(unique_filter.get_results(), organism, data_dir, x_mappable, True, tissues, out) + if x_mappable: + CrossMapper(organism, data_dir, out, True) + else: + ResultSaver(unique_filter.get_results(), organism, wd, x_mappable, False, tissues, out) + if x_mappable: + CrossMapper(organism, wd, out, False) if __name__ == '__main__': parser = argparse.ArgumentParser(description='GTF-Generator from UCSC Table Browser and Ensembl Regulatory Build' ) - parser.add_argument('organism', help='Source organism [ homo_sapiens or mus_musculus ]', action='store', nargs='?', type=str) + parser.add_argument('organism', help='Source organism [ hg19 | hg38 or mm9 | mm10 ]', action='store', nargs='?', type=str) parser.add_argument('--tissue', help='Tissue- or Celltype(s)', action='store', nargs='*', type=str) parser.add_argument('--wd', help='Working directory. default: "."', action='store', default=os.getcwd(), type=str) parser.add_argument('--dir', help='Data directory. default: "working_directory"', action='store', default="", type=str) + parser.add_argument('--out', help='Output directory: default: "."', action='store', default=".", type=str) args = vars(parser.parse_args()) if args["organism"]: - print("Working Dir: " + args["wd"]) - main_script(args["organism"], args["wd"], args["dir"], args["tissue"]) + if args["organism"] in ["hg19", "hg38", "mm9", "mm10"]: + print("Working Dir: " + args["wd"]) + main_script(args["organism"], args["wd"], args["dir"], args["out"], args["tissue"]) + else: + print("Invalid Organism: " + args["organism"] + " see -h for help") else: print("No Arguments found -> See python3 ./RegGTFExtractor.py -h for help.") diff --git a/masterenv.yml b/masterenv.yml index a977fe1..e0708db 100644 --- a/masterenv.yml +++ b/masterenv.yml @@ -24,4 +24,5 @@ dependencies: - biopython - pybedtools - matplotlib - - seaborn \ No newline at end of file + - seaborn + - crossmap \ No newline at end of file From a3c452de8b0f5f5fa7baf66de4042d0f291accee Mon Sep 17 00:00:00 2001 From: basti Date: Mon, 10 Dec 2018 16:29:49 +0100 Subject: [PATCH 177/206] Updated README. --- README.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 203d55b..62695a7 100644 --- a/README.md +++ b/README.md @@ -83,15 +83,16 @@ Optional arguments: --interation INT Number of iterations done by glam2. More Interations: better results, higher runtime. (Default: 10000) --tomtom_treshold float Threshold for similarity score. (Default: 0.01) - Motif clustering: + Motif clustering: --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) - --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) + --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) - Creating GTF: - --tissues STRING Filter for tissue/category activity categorys as in JSON config (Default: None) + Creating GTF: + --tissues STRING Filter for tissue/category activity categorys as in JSON config (Default: None) --wd PATH current working directory for the script (default: ".") --dir PATH directory for saved Ensembl / UCSC file (default: "./data/") --out PATH directory for the output GTF (default: ".") + All arguments can be set in the configuration files. ``` From 55bd528f97fa8f81db04019eb89d8b11f93ff81d Mon Sep 17 00:00:00 2001 From: SebastianBeyvers Date: Mon, 10 Dec 2018 16:30:54 +0100 Subject: [PATCH 178/206] Update Readme --- README.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 62695a7..ee8d49a 100644 --- a/README.md +++ b/README.md @@ -82,16 +82,16 @@ Optional arguments: --motif_max_len INT Maximum length of Motif (Default: 20) --interation INT Number of iterations done by glam2. More Interations: better results, higher runtime. (Default: 10000) --tomtom_treshold float Threshold for similarity score. (Default: 0.01) - - Motif clustering: + + Motif clustering: --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) - --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) + --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) - Creating GTF: - --tissues STRING Filter for tissue/category activity categorys as in JSON config (Default: None) - --wd PATH current working directory for the script (default: ".") - --dir PATH directory for saved Ensembl / UCSC file (default: "./data/") - --out PATH directory for the output GTF (default: ".") + Creating GTF: + --tissues STRING Filter for tissue/category activity categorys as in JSON config (Default: None) + --wd PATH current working directory for the script (default: ".") + --dir PATH directory for saved Ensembl / UCSC file (default: "./data/") + --out PATH directory for the output GTF (default: ".") All arguments can be set in the configuration files. ``` From 479ddad98da87b08aadda480986a4dc35b0865ea Mon Sep 17 00:00:00 2001 From: basti Date: Mon, 10 Dec 2018 17:50:34 +0100 Subject: [PATCH 179/206] Added more comments! --- bin/Modules/CrossMapper.py | 9 +++++ bin/Modules/Ensembl/ActivityTable.py | 6 ++-- bin/Modules/Ensembl/ActivityTableGenerator.py | 4 +++ bin/Modules/Ensembl/Ensembl.py | 5 +++ bin/Modules/Ensembl/FTPHandling/FTPEntry.py | 7 ++-- .../Ensembl/FTPHandling/URLRetrieve.py | 4 +++ bin/Modules/Ensembl/GTFGen.py | 14 +++++++- bin/Modules/Ensembl/checksums.py | 12 +++---- bin/Modules/SaveResults.py | 8 +++++ bin/Modules/Uniquifier.py | 12 +++++++ bin/Modules/ucsc/ucsc.py | 11 +++++++ bin/RegGTFExtractor.py | 33 +++++++++++++++++-- 12 files changed, 108 insertions(+), 17 deletions(-) diff --git a/bin/Modules/CrossMapper.py b/bin/Modules/CrossMapper.py index 74ae97e..d401c79 100644 --- a/bin/Modules/CrossMapper.py +++ b/bin/Modules/CrossMapper.py @@ -4,6 +4,14 @@ class CrossMapper: + + """ + + Class to download chain_files for chrossmapping hg38 or mm10 to older assembly versions. + Utilizes CrossMap.py. see wiki for more information. + + """ + def __init__(self, org, wd, out, is_dir): self.org = org if is_dir: @@ -12,6 +20,7 @@ def __init__(self, org, wd, out, is_dir): self.infile = os.path.join(wd+"/data/temp/"+org+".gtf") self.outfile = os.path.join(out+"/" + org + "_mapped.gtf") self.chainfile = self.get_chain_file(org, wd, is_dir) + # Execute Crossmapper for gff/gtf files (mapTree, targetChromSizes, sourceChromSizes) = CrossMap.read_chain_file(self.chainfile) CrossMap.crossmap_gff_file(mapTree, self.infile, self.outfile) diff --git a/bin/Modules/Ensembl/ActivityTable.py b/bin/Modules/Ensembl/ActivityTable.py index 040d15b..288bf7d 100644 --- a/bin/Modules/Ensembl/ActivityTable.py +++ b/bin/Modules/Ensembl/ActivityTable.py @@ -6,8 +6,8 @@ class ActivityTable: """ Class for checking activity_table and generating them. - ActivityTable = Byte Representation of Activity Status - corresponding to the generator Schema default: + activityTable = byte Representation of activity status + corresponding to the generator schema default: 0, "activity=ACTIVE", 1, "activity=POISED", 2, "activity=REPRESSED", @@ -28,6 +28,7 @@ def __init__(self, organism, current_release, wd, data_dir): "activity=NA"]) def check_and_generate_activity_table(self): + # checks if file already exists and generates new one if missing for subfolder in self.folders: folder_link = os.path.join(self.link, subfolder) sf_link = os.path.join(folder_link, "table.bin") @@ -37,6 +38,7 @@ def check_and_generate_activity_table(self): print("All ActivityTables found, proceeding") def generate_table(self, link): + # generates the table and saves it as table.bin file for root, dirs, files in os.walk(link): for file in files: if file.endswith(".gff.gz"): diff --git a/bin/Modules/Ensembl/ActivityTableGenerator.py b/bin/Modules/Ensembl/ActivityTableGenerator.py index 2c2cff6..f110236 100644 --- a/bin/Modules/Ensembl/ActivityTableGenerator.py +++ b/bin/Modules/Ensembl/ActivityTableGenerator.py @@ -3,6 +3,10 @@ class ATGenerator: + """ + Reads saved activity binary files (table.bin) + """ + def __init__(self, repre): self.representation = repre diff --git a/bin/Modules/Ensembl/Ensembl.py b/bin/Modules/Ensembl/Ensembl.py index de5839d..88adeb1 100644 --- a/bin/Modules/Ensembl/Ensembl.py +++ b/bin/Modules/Ensembl/Ensembl.py @@ -6,6 +6,11 @@ class Ensembl: + """ + Main class for handling Ensembl Regulatory data + Checks for local files and downloads if files are missing + """ + def __init__(self, organism, wd, data_dir): print("Starting Ensembl") self.updater = FTPRetriever(organism, wd, data_dir) diff --git a/bin/Modules/Ensembl/FTPHandling/FTPEntry.py b/bin/Modules/Ensembl/FTPHandling/FTPEntry.py index 0a90080..0d7bdc3 100644 --- a/bin/Modules/Ensembl/FTPHandling/FTPEntry.py +++ b/bin/Modules/Ensembl/FTPHandling/FTPEntry.py @@ -1,11 +1,12 @@ import ftplib -# Class to determine if a Ftp-path is file or directory. - - class FTPEntry: + """ + Class to determine if a ftp-path is file or directory. + """ + def __init__(self, filename, ftpobj, startingdir=None): self.filename = filename if startingdir is None: diff --git a/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py b/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py index 43feb54..6b45598 100644 --- a/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py +++ b/bin/Modules/Ensembl/FTPHandling/URLRetrieve.py @@ -4,6 +4,10 @@ class FTPHandler: + """ + Class to browse through ftp folders and download entries to local file + """ + def __init__(self, url, wd): self.ftp = ftplib.FTP(url) self.ftp.login() diff --git a/bin/Modules/Ensembl/GTFGen.py b/bin/Modules/Ensembl/GTFGen.py index 6a1a63b..0ba69bf 100644 --- a/bin/Modules/Ensembl/GTFGen.py +++ b/bin/Modules/Ensembl/GTFGen.py @@ -5,12 +5,20 @@ class GTFGen: + + """ + + Class to generate Ensembl GTF-data with activity + """ + def __init__(self, organism, release, wd, data_dir): self.gff_lines = self.get_organism_as_gff(organism, release, wd, data_dir) self.value_map = {0: "ACTIVE", 1: "POISED", 2: "REPRESSED", 3: "INACTIVE", 4: "NA"} def get_organism_as_gff(self, organism, release, wd, data_dir): + + # reads the original gff file for organism if data_dir: directory = os.path.join(data_dir + "/EnsemblData/", release, organism) else: @@ -25,6 +33,8 @@ def get_organism_as_gff(self, organism, release, wd, data_dir): def reformat_to_gff(self, activity, release): + # Reformats gff to gtf and appends activity-data for config specified celltype-categories + gtf_return = [] for index, line in enumerate(self.gff_lines): @@ -57,16 +67,18 @@ def reformat_to_gff(self, activity, release): @staticmethod def generate_additional_information(id, activity): + # helper method to concat activity information to string return "; ".join([id, "activity="+", ".join(activity)]) def generate_activity_list(self, activity, index): + # generates activity list activity_list = [] for key, value in activity.items(): activity_list.append(key+">"+self.value_map[value[index]]) return activity_list def get_gtf(self, release, activity): - + # returns the resulting gtf-formatted-list return self.reformat_to_gff(activity, release) diff --git a/bin/Modules/Ensembl/checksums.py b/bin/Modules/Ensembl/checksums.py index 55209f9..8f8b92a 100644 --- a/bin/Modules/Ensembl/checksums.py +++ b/bin/Modules/Ensembl/checksums.py @@ -2,6 +2,10 @@ # Python implementation of linux sum (BSD 16-bit Checksum) commandline tool. +""" +Unused script with checksum implementations in Python +""" + def bsdchecksum(infile): with open(infile, 'rb') as f: file_bytes = f.read() @@ -17,11 +21,3 @@ def md5_checksum(infile): with open(infile, 'rb') as f: file_bytes = f.read() return hashlib.md5(file_bytes).hexdigest() - - -if __name__ == '__main__': - # print(bsdchecksum("/home/basti/Schreibtisch/tests/homo_sapiens.GRCh38.HMEC.Regulatory_Build.regulatory_activity.20161111.gff.gz")) - print(md5_checksum("/home/basti/Schreibtisch/tests/" - "mus_musculus.GRCm38.forebrain_embryonic_16_5_days." - "Regulatory_Build.regulatory_activity.20180516.gff.gz")) - diff --git a/bin/Modules/SaveResults.py b/bin/Modules/SaveResults.py index 5425bd3..64ed514 100644 --- a/bin/Modules/SaveResults.py +++ b/bin/Modules/SaveResults.py @@ -4,6 +4,14 @@ class ResultSaver: + + """ + + class to save the results. Path is dependent on the data_dir, tissuetype and mapped = True or False. + The output is saved to the temp directory in the data folder if crossmapping is necessary. + + """ + def __init__(self, results, organism, wd, mapped, is_data_dir, tissue, out): print("Save results to File !") diff --git a/bin/Modules/Uniquifier.py b/bin/Modules/Uniquifier.py index 7d4925d..16d5538 100644 --- a/bin/Modules/Uniquifier.py +++ b/bin/Modules/Uniquifier.py @@ -1,5 +1,11 @@ class UniqueFilter: + """ + + Class to get unique GTF-results, filtered by specified cell-/tissuetypes + + """ + def __init__(self, ense, ucsc, org_filter=None): self.results = self.get_filtered_results(org_filter, ense, ucsc) @@ -7,6 +13,9 @@ def get_results(self): return self.results def get_filtered_results(self, org_filter, ense, ucsc): + + # Apply Filter + unfiltered_results = self.concat_without_duplicates(ense, ucsc) if org_filter: filterstrings = [x+">ACTIVE" for x in org_filter] @@ -21,6 +30,9 @@ def get_filtered_results(self, org_filter, ense, ucsc): @staticmethod def concat_without_duplicates(ense, ucsc): + + # Concat UCSC and Ensembl data without duplicates + results = ense+ucsc for ens in ense: for uc in ucsc: diff --git a/bin/Modules/ucsc/ucsc.py b/bin/Modules/ucsc/ucsc.py index c8ad466..cd55976 100644 --- a/bin/Modules/ucsc/ucsc.py +++ b/bin/Modules/ucsc/ucsc.py @@ -7,6 +7,11 @@ class UcscGtf: + """ + Class to gather ucsc refSeq-FuncElem data. + + """ + def __init__(self, org, wd, data_dir): self.organism_id = self.get_organism_id(org) self.link = "http://hgdownload.soe.ucsc.edu/gbdb/"+self.organism_id+"/ncbiRefSeq/refSeqFuncElems.bb" @@ -23,10 +28,12 @@ def __init__(self, org, wd, data_dir): print("UCSC finished !") def generate_gff_file(self): + # Call bigBedToBed binary to get a Bed file in the UCSCData folder callstring = [self.path_to_bin, self.link, self.output] subprocess.call(callstring) def read_gff_to_gtf(self): + # Reads Bed File and return a gtf-formatted list of elements. gtf_lines = [] with open(self.output, 'r') as csvfile: tsvreader = csv.reader(csvfile, delimiter='\t') @@ -46,11 +53,13 @@ def read_gff_to_gtf(self): return gtf_lines def find_ID(self, line): + # Find RefSeq ID in Line pattern = re.compile(r'ID:[0-9]{,9}|$') return re.search( pattern, line).group() def get_activity(self, line): + # Find activity categories in bed file key_status = [] for key, value in self.ucsc_categories.items(): if value: @@ -64,6 +73,7 @@ def get_activity(self, line): @staticmethod def get_organism_id(org): + # convert intern name e.g. "homo_sapiens" to ucsc name "hg38". if org == "homo_sapiens": return "hg38" elif org == "mus_musculus": @@ -71,6 +81,7 @@ def get_organism_id(org): @staticmethod def get_activity_categories(organism, wd): + # Method to get ucsc-celltype categories from JSON config path_to_config = os.path.join(wd+"/config/celltypes_" + organism + ".json") categories = {} with open(path_to_config) as input_file: diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index 131b853..14acaa5 100755 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -1,3 +1,13 @@ +""" + +RegGTFExtractor.py extracts regulatory-data from Ensembl and UCSC databases +and converts output to GTF-formatted file. + +@author: Sebastian Beyvers +@contact: sebastian.beyvers@med.uni-giessen.de + +""" + import argparse from Modules.Ensembl.Ensembl import Ensembl from Modules.ucsc.ucsc import UcscGtf @@ -10,6 +20,8 @@ def check_for_local_folder(wd): + # Check if local folder exists and create if missing when no data_dir is specified + if not os.path.isdir(os.path.join(wd+"/data/EnsemblData")): os.mkdir(os.path.join(wd+"/data/EnsemblData")) @@ -23,6 +35,8 @@ def check_for_local_folder(wd): def check_for_data_dir(data_dir): + # Check if local folder exists and create if missing when data_dir as parameter is specified + if not os.path.isdir(os.path.join(data_dir+"/EnsemblData")): os.mkdir(os.path.join(data_dir+"/EnsemblData")) @@ -34,6 +48,9 @@ def check_for_data_dir(data_dir): def check_filter(tissue_cmd, org, wd): + + # Checks if filter-celltype is in Json types for organism + path_to_config = os.path.join(wd + "/config/celltypes_" + org + ".json") tissues_config = [] if not tissue_cmd: @@ -50,11 +67,10 @@ def check_filter(tissue_cmd, org, wd): return False -def cross_map(data_dir, org): - pass +def check_organism(org): + # Checks the organism input and decides if chrossmapping is necessary -def check_organism(org): if org == "hg38": return "homo_sapiens", False if org == "hg19": @@ -68,6 +84,9 @@ def check_organism(org): def main_script(organism, wd, data_dir, out, tissuetype=None): + + # Main function + (org, x_mappable) = check_organism(organism) if not data_dir: check_for_local_folder(wd) @@ -80,7 +99,9 @@ def main_script(organism, wd, data_dir, out, tissuetype=None): tissues = None print("Filter not detected !") + # Get UCSC Data ucsc = UcscGtf(org, wd, data_dir) + # Gen Ensembl Data ense = Ensembl(org, wd, data_dir) print("Getting Unique Results") unique_filter = UniqueFilter(ense.get_gtf(), ucsc.get_gtf(), tissues) @@ -95,6 +116,9 @@ def main_script(organism, wd, data_dir, out, tissuetype=None): if __name__ == '__main__': + + # Argumentparser + parser = argparse.ArgumentParser(description='GTF-Generator from UCSC Table Browser and Ensembl Regulatory Build' ) parser.add_argument('organism', help='Source organism [ hg19 | hg38 or mm9 | mm10 ]', action='store', nargs='?', type=str) parser.add_argument('--tissue', help='Tissue- or Celltype(s)', action='store', nargs='*', type=str) @@ -102,6 +126,9 @@ def main_script(organism, wd, data_dir, out, tissuetype=None): parser.add_argument('--dir', help='Data directory. default: "working_directory"', action='store', default="", type=str) parser.add_argument('--out', help='Output directory: default: "."', action='store', default=".", type=str) args = vars(parser.parse_args()) + + # Check if organism exists + if args["organism"]: if args["organism"] in ["hg19", "hg38", "mm9", "mm10"]: print("Working Dir: " + args["wd"]) From 22a36a5ab1a185a1446b39c6632a4fa669912a89 Mon Sep 17 00:00:00 2001 From: basti Date: Mon, 10 Dec 2018 17:59:05 +0100 Subject: [PATCH 180/206] Changed Readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ee8d49a..6853199 100644 --- a/README.md +++ b/README.md @@ -49,7 +49,6 @@ Required arguments: --bed Path to BED-file with peaks of interest corresponding to the BigWig file --genome_fasta Path to genome in FASTA-format --jaspar_db Path to motif-database in MEME-format - --organism STRING Source organism: [ hg19 | hg 38 or mm9 | mm10 ] Optional arguments: @@ -92,6 +91,7 @@ Optional arguments: --wd PATH current working directory for the script (default: ".") --dir PATH directory for saved Ensembl / UCSC file (default: "./data/") --out PATH directory for the output GTF (default: ".") + --organism STRING Source organism: [ hg19 | hg 38 or mm9 | mm10 ] (Default: hg38) All arguments can be set in the configuration files. ``` From 69434e2671fe055250e3408d2cf3a8322dca564c Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 11 Dec 2018 12:34:10 +0100 Subject: [PATCH 181/206] Changed Readme and updated mm_config --- README.md | 4 +- bin/config/celltypes_mus_musculus.json | 270 +++++++++++-------------- 2 files changed, 123 insertions(+), 151 deletions(-) diff --git a/README.md b/README.md index 6853199..713312f 100644 --- a/README.md +++ b/README.md @@ -87,10 +87,8 @@ Optional arguments: --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) Creating GTF: - --tissues STRING Filter for tissue/category activity categorys as in JSON config (Default: None) + --tissue STRING Filter for one or more tissue/category activity, categories as in JSON config (Default: None) --wd PATH current working directory for the script (default: ".") - --dir PATH directory for saved Ensembl / UCSC file (default: "./data/") - --out PATH directory for the output GTF (default: ".") --organism STRING Source organism: [ hg19 | hg 38 or mm9 | mm10 ] (Default: hg38) All arguments can be set in the configuration files. diff --git a/bin/config/celltypes_mus_musculus.json b/bin/config/celltypes_mus_musculus.json index 0f02cde..79a574c 100644 --- a/bin/config/celltypes_mus_musculus.json +++ b/bin/config/celltypes_mus_musculus.json @@ -1,179 +1,153 @@ [ { - "type": "A549", - "alias_ucsc": [], - "alias_ensembl": ["A549"] - }, - { - "type": "Aorta", - "alias_ucsc": ["branchial arch"], - "alias_ensembl": ["Aorta"] - }, - { - "type": "Thymus", - "alias_ucsc": [], - "alias_ensembl": ["Fetal_Thymus", "Thymus"] - }, - { - "type": "B-Cells", - "alias_ucsc": [], - "alias_ensembl": ["B_cells_PB_Roadmap", "naive_B_cell_VB", "GM12878"] - }, - { - "type": "T-Cell", - "alias_ucsc": [], - "alias_ensembl": ["CD4_ab_T_cell_VB", "CM_CD4_ab_T_cell_VB", "CD8_ab_T_cell_CB", "T_cells_PB_Roadmap"] - }, - { - "type": "Monocyte", - "alias_ucsc": [], - "alias_ensembl": ["CD14CD16__monocyte_CB", "CD14CD16__monocyte_VB", "Monocytes_CD14", "Monocytes_CD14_PB_Roadmap"] - }, - { - "type": "Neutrophil", - "alias_ucsc": [], - "alias_ensembl": ["neutrophil_CB", "neutrophil_myelocyte_BM", "neutrophil_VB"] - }, - { - "type": "Eosinophil", - "alias_ucsc": [], - "alias_ensembl": ["eosinophil_VB"] - }, - { - "type": "Macrophage", - "alias_ucsc": [], - "alias_ensembl": [ - "M0_macrophage_CB", - "M0_macrophage_VB", - "M1_macrophage_CB", - "M1_macrophage_VB", - "M2_macrophage_CB", - "M2_macrophage_VB" - ] - }, - { - "type": "Erythroblast", - "alias_ucsc": [], - "alias_ensembl": ["erythroblast_CB"] + "type": "Heart", + "alias_ucsc": ["heart"], + "alias_ensembl": ["heart_adult_8_weeks", "heart_embryonic_10_5_days", + "heart_embryonic_11_5_days", "heart_embryonic_12_5_days", + "heart_embryonic_13_5_days", "heart_embryonic_14_5_days", + "heart_embryonic_15_5_days", "heart_embryonic_16_5_days", + "heart_postnatal_0_days"] + }, + { + "type": "Facial_Prominence", + "alias_ucsc": [], + "alias_ensembl": ["embryonic_facial_prominence_embryonic_10_5_days", + "embryonic_facial_prominence_embryonic_11_5_days", + "embryonic_facial_prominence_embryonic_12_5_days", + "embryonic_facial_prominence_embryonic_13_5_days", + "embryonic_facial_prominence_embryonic_14_5_days", + "embryonic_facial_prominence_embryonic_15_5_days"] + }, + { + "type": "Forebrain", + "alias_ucsc": ["forebrain"], + "alias_ensembl": ["forebrain_embryonic_10_5_days", + "forebrain_embryonic_11_5_days", + "forebrain_embryonic_12_5_days", + "forebrain_embryonic_13_5_days", + "forebrain_embryonic_14_5_days", + "forebrain_embryonic_15_5_days", + "forebrain_embryonic_16_5_days", + "forebrain_postnatal_0_days"] + }, + { + "type": "Hindbrain", + "alias_ucsc": ["hindbrain (rhombencephalon)"], + "alias_ensembl": ["hindbrain_embryonic_10_5_days", + "hindbrain_embryonic_11_5_days", + "hindbrain_embryonic_12_5_days", + "hindbrain_embryonic_13_5_days", + "hindbrain_embryonic_14_5_days", + "hindbrain_embryonic_15_5_days", + "hindbrain_embryonic_16_5_days", + "hindbrain_postnatal_0_days" + ] + }, + { + "type": "Midbrain", + "alias_ucsc": ["midbrain (mesencephalon)"], + "alias_ensembl": ["midbrain_embryonic_10_5_days", + "midbrain_embryonic_11_5_days", + "midbrain_embryonic_12_5_days", + "midbrain_embryonic_13_5_days", + "midbrain_embryonic_14_5_days", + "midbrain_embryonic_15_5_days", + "midbrain_embryonic_16_5_days", + "midbrain_postnatal_0_days" + ] + }, + { + "type": "NeuralTube", + "alias_ucsc": ["neural tube"], + "alias_ensembl": ["neural_tube_embryonic_11_5_days", + "neural_tube_embryonic_12_5_days", + "neural_tube_embryonic_13_5_days", + "neural_tube_embryonic_14_5_days", + "neural_tube_embryonic_15_5_days"] }, { "type": "Intestine", "alias_ucsc": [], - "alias_ensembl": ["Fetal_Intestine_Large", "Fetal_Intestine_Small", "Small_Intestine"] - }, - { - "type": "AdrenalGland", - "alias_ucsc": [], - "alias_ensembl": ["Fetal_Adrenal_Gland"] - }, - { - "type": "Muscle", - "alias_ucsc": ["limb"], - "alias_ensembl": ["Fetal_Muscle_Leg", "Fetal_Muscle_Trunk", "Psoas_Muscle", "HSMM", "HSMMtube"] - }, - { - "type": "Gastric", - "alias_ucsc": [], - "alias_ensembl": ["Fetal_Stomach", "Gastric"] - }, - { - "type": "Endothelial", - "alias_ucsc": ["blood vessels"], - "alias_ensembl": ["EPC_VB", "HMEC", "HUVEC", "HUVEC_prol_CB", "NHEK"] + "alias_ensembl": ["intestine_embryonic_14_5_days", + "intestine_embryonic_15_5_days", + "intestine_embryonic_16_5_days", + "intestine_postnatal_0_days"] }, { - "type": "StemCells", + "type": "Kidney", "alias_ucsc": [], - "alias_ensembl": ["H1ESC", "H1_mesenchymal", "H1_neuronal_progenitor", "H1_trophoblast", "H9", "MSC_VB", "iPS_20b", "iPS_DF_6_9", "iPS_DF_19_11"] - }, - { - "type": "Lung", - "alias_ucsc": [], - "alias_ensembl": ["Lung", "IMR90", "NHLF"] - }, - { - "type": "Pancreas", - "alias_ucsc": ["pancreas"], - "alias_ensembl": ["Pancreas"] + "alias_ensembl": ["kidney_adult_8_weeks", + "kidney_embryonic_14_5_days", + "kidney_embryonic_15_5_days", + "kidney_embryonic_16_5_days", + "kidney_postnatal_0_days"] }, { "type": "Liver", "alias_ucsc": ["liver"], - "alias_ensembl": [] - }, - { - "type": "Ovary", - "alias_ucsc": [], - "alias_ensembl": ["Ovary"] + "alias_ensembl": ["liver_embryonic_11_5_days", + "liver_embryonic_12_5_days", + "liver_embryonic_13_5_days", + "liver_embryonic_14_5_days", + "liver_embryonic_15_5_days", + "liver_embryonic_16_5_days", + "liver_adult_8_weeks", + "liver_postnatal_0_days"] }, { - "type": "Placenta", - "alias_ucsc": [], - "alias_ensembl": ["Placenta"] - }, - { - "type": "Spleen", - "alias_ucsc": [], - "alias_ensembl": ["Spleen"] - }, - { - "type": "Heart", - "alias_ucsc": ["heart"], - "alias_ensembl": ["Right_Atrium", "Left_Ventricle"] - }, - { - "type": "Osteoblast", - "alias_ucsc": [], - "alias_ensembl": ["Osteobl"] - }, - { - "type": "Fibroblast", - "alias_ucsc": [], - "alias_ensembl": ["NHDF_AD"] - }, - { - "type": "NK-Cells", - "alias_ucsc": [], - "alias_ensembl": ["Natural_Killer_cells_PB"] - }, - { - "type": "Cancers", - "alias_ucsc": [], - "alias_ensembl": ["HeLa_S3", "HepG2", "DND_41", "K562"] + "type": "Limb", + "alias_ucsc": ["limb"], + "alias_ensembl": ["limb_embryonic_10_5_days", + "limb_embryonic_11_5_days", + "limb_embryonic_12_5_days", + "limb_embryonic_13_5_days", + "limb_embryonic_14_5_days", + "limb_embryonic_15_5_days"] }, { - "type": "Brain", - "alias_ucsc": ["midbrain (mesencephalon)", "trigeminal V (ganglion, cranial)", "forebrain", "neural tube", "hindbrain (rhombencephalon)", "dorsal root ganglion", "cranial nerve"], - "alias_ensembl": ["NH_A"] + "type": "Lung", + "alias_ucsc": [], + "alias_ensembl": ["lung_embryonic_14_5_days", + "lung_embryonic_15_5_days", + "lung_embryonic_16_5_days", + "lung_postnatal_0_days" + ] }, { - "type": "Mesenchym", - "alias_ucsc": ["mesenchyme derived from neural crest", "facial mesenchyme"], - "alias_ensembl": [] + "type": "Stomach", + "alias_ucsc": [], + "alias_ensembl": ["stomach_embryonic_14_5_days", + "stomach_embryonic_15_5_days", + "stomach_embryonic_16_5_days", + "stomach_postnatal_0_days"] }, { - "type": "Embryonal", - "alias_ucsc": ["somite", "genital tubercle"], - "alias_ensembl": [] + "type": "MEL", + "alias_ucsc": [], + "alias_ensembl": ["MEL_cell_line"] }, { - "type": "Eye", - "alias_ucsc": ["eye"], - "alias_ensembl": [] + "type": "Spleen", + "alias_ucsc": [], + "alias_ensembl": ["spleen_adult_8_weeks"] }, { - "type": "Nose", - "alias_ucsc": ["nose"], - "alias_ensembl": [] + "type": "Bruce", + "alias_ucsc": [], + "alias_ensembl": ["ES_Bruce4_embryonic"] }, { - "type": "Tail", - "alias_ucsc": ["tail"], - "alias_ensembl": [] + "type": "Ganglion", + "alias_ucsc": ["dorsal root ganglion", "trigeminal V (ganglion, cranial)", "cranial nerve"], + "alias_ensembl": [] }, { - "type": "Melanocytes", - "alias_ucsc": ["melanocytes"], - "alias_ensembl": [] + "type": "Other", + "alias_ucsc": ["nose", "branchial arch", + "ear", "somite", "tail", "eye", + "facial mesenchyme", "other", "melanocytes", + "blood vessels", "genital tubercle"], + "alias_ensembl": [] } + ] From 5f849b82cd0ed312121e2769944194881919ebce Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 11 Dec 2018 12:52:49 +0100 Subject: [PATCH 182/206] data error fixed --- bin/RegGTFExtractor.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/bin/RegGTFExtractor.py b/bin/RegGTFExtractor.py index 14acaa5..355d4da 100755 --- a/bin/RegGTFExtractor.py +++ b/bin/RegGTFExtractor.py @@ -22,6 +22,10 @@ def check_for_local_folder(wd): # Check if local folder exists and create if missing when no data_dir is specified + if not os.path.isdir(os.path.join(wd+"/data/")): + + os.mkdir(os.path.join(wd+"/data/")) + if not os.path.isdir(os.path.join(wd+"/data/EnsemblData")): os.mkdir(os.path.join(wd+"/data/EnsemblData")) @@ -37,6 +41,9 @@ def check_for_data_dir(data_dir): # Check if local folder exists and create if missing when data_dir as parameter is specified + if not os.path.isdir(os.path.join(data_dir)): + os.mkdir(os.path.join(data_dir)) + if not os.path.isdir(os.path.join(data_dir+"/EnsemblData")): os.mkdir(os.path.join(data_dir+"/EnsemblData")) From 476c25d420bd297512a6ecb8090e3f3177dcd4e4 Mon Sep 17 00:00:00 2001 From: basti Date: Tue, 11 Dec 2018 13:48:29 +0100 Subject: [PATCH 183/206] error in output fixed --- bin/Modules/SaveResults.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/Modules/SaveResults.py b/bin/Modules/SaveResults.py index 64ed514..d285c25 100644 --- a/bin/Modules/SaveResults.py +++ b/bin/Modules/SaveResults.py @@ -18,9 +18,9 @@ def __init__(self, results, organism, wd, mapped, is_data_dir, tissue, out): self.path = "" if mapped: if is_data_dir: - self.path = os.path.join(wd + "temp/" + organism + ".gtf") + self.path = os.path.join(wd + "/temp/" + organism + ".gtf") else: - self.path = os.path.join( wd + "data/temp/" + organism + ".gtf" ) + self.path = os.path.join( wd + "/data/temp/" + organism + ".gtf" ) elif tissue: self.path = os.path.join(out+"/"+organism+"_filtered.gtf") else: From 7357dc2cf70fc39060bae1e7d7808ad1c19b69be Mon Sep 17 00:00:00 2001 From: basti Date: Wed, 12 Dec 2018 12:20:57 +0100 Subject: [PATCH 184/206] Fixed small bug in output formatting for mm10/mm9 --- bin/Modules/Ensembl/GTFGen.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/bin/Modules/Ensembl/GTFGen.py b/bin/Modules/Ensembl/GTFGen.py index 0ba69bf..9753d39 100644 --- a/bin/Modules/Ensembl/GTFGen.py +++ b/bin/Modules/Ensembl/GTFGen.py @@ -66,9 +66,13 @@ def reformat_to_gff(self, activity, release): return gtf_return @staticmethod - def generate_additional_information(id, activity): + def generate_additional_information(gene_id, activity): + + if gene_id.startswith("ID=regulatory_region:"): + gene_id = "ID="+gene_id.split(":")[1] + # helper method to concat activity information to string - return "; ".join([id, "activity="+", ".join(activity)]) + return "; ".join([gene_id, "activity="+", ".join(activity)]) def generate_activity_list(self, activity, index): # generates activity list From 367dd33e5e05272fb2e17fb34a6ed27ccd9f7901 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 12 Dec 2018 17:53:00 -0500 Subject: [PATCH 185/206] updated README --- README.md | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 713312f..e6b69e9 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ export PATH=[meme-suite instalation path]/bin:$PATH ``` -Download all files from the [GitHub repository](https://github.molgen.mpg.de/loosolab/masterJLU2018). +Download all files from the [GitHub repository](https://github.molgen.mpg.de/loosolab/masterJLU2018). The Nextflow-script needs a conda enviroment to run. Nextflow can create the needed enviroment from the given yaml-file. On some systems Nextflow exits the run with following error: ``` @@ -35,23 +35,26 @@ Run the following commands to create the enviroment: path=[Path to given masterenv.yml file] conda env create --name masterenv -f=$path ``` -When the enviroment is created, set the variable 'path_env' in the configuration file as the path to it. +When the enviroment is created, set the variable 'path_env' in the configuration file as the path to it. ## Quick Start ```console -nextflow run pipeline.nf --input [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --jaspar_db [MEME-file] +nextflow run pipeline.nf --bigwig [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --motif_db [MEME-file] ``` ## Parameters For a detailed overview for all parameters follow this [link](https://github.molgen.mpg.de/loosolab/masterJLU2018/wiki/Configuration). ``` Required arguments: - --input Path to BigWig-file with scores on the peaks of interest + --bigwig Path to BigWig-file with scores on the peaks of interest --bed Path to BED-file with peaks of interest corresponding to the BigWig file --genome_fasta Path to genome in FASTA-format - --jaspar_db Path to motif-database in MEME-format + --motif_db Path to motif-database in MEME-format Optional arguments: + + --tfbs_path Path to directory with output BED-files from tfbsscan. If given tfbsscan will not be run. + Footprint extraction: --window_length INT (Default: 200) a length of a window --step INT (Default: 100) an interval to slide the window @@ -77,24 +80,22 @@ Optional arguments: --strand INT Align +/+ & +/- (= 1). Or align only +/+ (= 0). (Default: 0) Motif estimation: - --motif_min_len INT Minimum length of Motif (Default: 8) - --motif_max_len INT Maximum length of Motif (Default: 20) - --interation INT Number of iterations done by glam2. More Interations: better results, higher runtime. (Default: 10000) + --motif_min_key INT Maximum number of key positions (aligned columns) (Default: 8) + --motif_max_key INT Maximum number of key positions (aligned columns) (Default: 20) + --iteration INT Number of iterations done by glam2. More Iterations: better results, higher runtime. (Default: 10000) --tomtom_treshold float Threshold for similarity score. (Default: 0.01) - + Motif clustering: --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) - --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) + --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) + + Creating GTF: + --tissue STRING Filter for one or more tissue/category activity, categories as in JSON config (Default: None) + --organism STRING Source organism: [ hg19 | hg38 or mm9 | mm10 ] (Default: hg38) - Creating GTF: - --tissue STRING Filter for one or more tissue/category activity, categories as in JSON config (Default: None) - --wd PATH current working directory for the script (default: ".") - --organism STRING Source organism: [ hg19 | hg 38 or mm9 | mm10 ] (Default: hg38) - All arguments can be set in the configuration files. ``` For further information read the [documentation](https://github.molgen.mpg.de/loosolab/masterJLU2018/wiki) - From 9026ad9a1f7e0755eae14582a31c9c09bcf605e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 12 Dec 2018 17:53:29 -0500 Subject: [PATCH 186/206] minor bugfix --- bin/compareBed.sh | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/bin/compareBed.sh b/bin/compareBed.sh index ee65fb4..f635283 100644 --- a/bin/compareBed.sh +++ b/bin/compareBed.sh @@ -68,6 +68,11 @@ case $key in shift shift ;; + -p|--path) + path="$2" + shift + shift + ;; -h|--help) help=true he=true @@ -188,7 +193,7 @@ do fi echo $i done -else +else declare -a motiffiles=(`echo $motifs | sed 's/,/ /g'`) for i in ${motiffiles[@]} do @@ -215,7 +220,7 @@ cat "$workdir"/pass1Fa.bed | wc -l echo calc maxScore #2. compute absolut maxscore position -Rscript --vanilla /bin/maxScore.R "$workdir"/pass1Fa.bed +Rscript --vanilla $path/maxScore.R "$workdir"/pass1Fa.bed #3 subtract overlapping regions for additional motifs echo "also get subsequences with no overlap of overlapping sequences" @@ -254,13 +259,13 @@ if [ $help == false ] then cat "$workdir"/pass1FaHelp.bed > "$workdir"/pass2Tr.bed else - cat "$workdir"/pass1Fa.bed > "$workdir"/pass2Tr.bed + cat "$workdir"/pass1Fa.bed > "$workdir"/pass2Tr.bed fi -#4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition +#4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition # also creates a small output file with information about the comparison -Rscript --vanilla /bin/merge.R $min $max "$workdir" $data +Rscript --vanilla $path/merge.R $min $max "$workdir" $data #5. add fasta sequences to bed and create fasta file @@ -269,4 +274,3 @@ bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta #6 clean up #rm "$workdir"/pass1Fa.bed "$workdir"/pass1Tr.bed "$workdir"/pass2Tr.bed "$workdir"/merged.bed "$workdir"/pass1FaHelp.bed "$workdir"/pass1TrHelp.bed - From 023bf564bbee758681eb436b7437698b03a7082f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 12 Dec 2018 17:54:22 -0500 Subject: [PATCH 187/206] added T parameter for sorting --- bin/tfbsscan.py | 100 ++++++++++++++++++++++++------------------------ 1 file changed, 51 insertions(+), 49 deletions(-) diff --git a/bin/tfbsscan.py b/bin/tfbsscan.py index 2bae662..f17ebf6 100644 --- a/bin/tfbsscan.py +++ b/bin/tfbsscan.py @@ -68,7 +68,7 @@ def check_directory(directory): if not os.path.exists(directory): os.makedirs(directory) logger.info('a new directory ' + directory + ' was created') - + #merge the whole genome with the regions mentioned in .bed file def merge(genome, bed_file, output_directory): logger.info('the merging of files ' + genome + ' and ' + bed_file + ' will end soon, the result file is output_merge.fa') @@ -79,9 +79,9 @@ def merge(genome, bed_file, output_directory): #split the motifs each in other file def split_motifs(motifs, output_directory, usage): logger.info("the file with motifs " + motifs + " will be checked for motifs and if needed splitted in files each containing only one motif") - + first_line = subprocess.getoutput("head -1 " + motifs) #find the first line of the input file - + if usage == "moods": if first_line.startswith(">"): #the motif file probably has the .pfm format, try to read and split it @@ -94,7 +94,7 @@ def split_motifs(motifs, output_directory, usage): if first_line.startswith("MEME version"): #the motifs file has probably the MEME format, try to read and split it splitted_motifs = read_meme(motifs, output_directory) - + #if the there was a convertion before, delete all the .pfm files as we don't need them for filename in os.listdir(output_directory): if filename.endswith(".pfm"): @@ -128,13 +128,13 @@ def read_pfm(motifs, output_directory): motif_alternate_name = check_name(re.split(' ', line)[1].rstrip()) motif_id = re.split(' ', line[1:])[0] #[1:] meands do not use the first character motif_name = os.path.join(output_directory, motif_alternate_name + '_' + motif_id + '.pfm') - + splitted_motifs.append(motif_name) written_file = open(motif_name, 'w') - + if lines >= 1 and lines <= 4: #one motif has 5 lines, the first consists the name, the next 4 - the information we need to proceed the data within moods motif.append(line) - + lines = lines + 1 written_file.write(''.join(motif)) written_file.close() @@ -169,7 +169,7 @@ def read_meme(motifs, output_directory): motif_alternate_name = check_name(re.split(' ', line)[2].rstrip()) motif_id = re.split(' ', line)[1] motif_name = os.path.join(output_directory, motif_alternate_name + '_' + motif_id + '.meme') - else: + else: motif_alternate_name = check_name(re.split(' ', line)[1].rstrip()) motif_name = os.path.join(output_directory, motif_alternate_name + '.meme') @@ -182,7 +182,7 @@ def read_meme(motifs, output_directory): motif.append(line) lines = lines + 1 - + #write the last motif written_file.write(''.join(motif)) written_file.close() @@ -190,7 +190,7 @@ def read_meme(motifs, output_directory): read_file.close() return splitted_motifs - + def convert_meme_to_pfm(motifs, output_directory): #i can only convert the file to pfm if the motifs file is in MEME format @@ -206,7 +206,7 @@ def convert_meme_to_pfm(motifs, output_directory): else: #search for motifs and save each to another file if line.startswith("MOTIF"): - + if 'written_file' in locals(): for row in rows: written_file.write('\t'.join(row) + '\n') @@ -214,22 +214,22 @@ def convert_meme_to_pfm(motifs, output_directory): rows = [[] for row in range(4)] written_file.close() - + #the alternate name will be checked for validity and the invalid chars will be replaced with '_' if len(re.split(' ', line.rstrip())) == 3: #in the input motif file the motif id and the alternate name are splitted using the tab, otherwise they are splitted using _, but we do not want to change it if so motif_alternate_name = check_name(re.split(' ', line)[2].rstrip()) motif_id = re.split(' ', line)[1] motif_name = os.path.join(output_directory, motif_alternate_name + '_' + motif_id + '.pfm') - else: + else: motif_alternate_name = check_name(re.split(' ', line)[1].rstrip()) motif_name = os.path.join(output_directory, motif_alternate_name + '.pfm') - + #make a list with all the motif names to know which files to iterate when fimo is called splitted_motifs.append(motif_name) written_file = open(motif_name, 'w') - + elif line.startswith("letter-probability matrix"): columns = int(re.split(' ', re.split('w= ', line)[1])[0]) #find the number of columns from the line out of the motifs file nsites = int(re.split(' ', re.split('nsites= ', line)[1])[0]) #find the nsites to count the frequency count for .pfm file @@ -239,10 +239,10 @@ def convert_meme_to_pfm(motifs, output_directory): rows[i].append(str(round(float(re.findall(r'\S+', line)[i])*nsites))) #split the line, do not mention how much whitespaces are in between, multiply it with nsites and save it to the corresponding row lines = lines + 1 - + #write the last motif for row in rows: - written_file.write('\t'.join(row) + '\n') + written_file.write('\t'.join(row) + '\n') written_file.close() read_file.close() @@ -286,26 +286,26 @@ def call_fimo(fimo_data, p_value, one_motif, genome, output_directory): fimo_output_unsorted = os.path.join(output_directory, "fimo_output_unsorted_" + os.path.splitext(os.path.basename(one_motif))[0] + ".txt") #check if user needs special options for the fimo - if fimo_data != None: + if fimo_data != None: fimo_data = fimo_data + " --thresh " + str(p_value) + " " - else: + else: fimo_data = "--thresh " + str(p_value) + " " #add the passed p value to the fimo options - #call fimo for this motif and save the output to a temporary file + #call fimo for this motif and save the output to a temporary file send_to_fimo = "fimo --text --no-qvalue " + fimo_data + one_motif + " " + genome + " > " + fimo_output_unsorted logger.info('fimo proceed the data using this call ' + send_to_fimo) fimo_stdout = subprocess.getoutput(send_to_fimo) - + #the normal output from fimo starts with Using motif ..., so print it from the logger, otherwise print what else fimo says if fimo_stdout.startswith("Using") and re.split('\n', fimo_stdout)[1]: logger.info('info from fimo: ' + re.split('\n', fimo_stdout)[0].rstrip()) logger.info('info from fimo: ' + re.split('\n', fimo_stdout)[1].rstrip()) else: #there were some problems with fimo, so we want to see what they were logger.info('info from fimo: ' + fimo_stdout) - - + + if not os.path.isfile(fimo_output_unsorted): logger.info('the usage of fimo was crashed, there is no required output file, the exit is forced') sys.exit() @@ -315,12 +315,13 @@ def call_fimo(fimo_data, p_value, one_motif, genome, output_directory): return fimo_output_unsorted else: #if the file was converted from pfm, the second column contains the positions, so we want to sort using this column, and not the next one + tmp_path = os.path.join(output_directory, "tmp/") second_line = subprocess.getoutput("sed -n '2{p;q}' " + fimo_output_unsorted) if re.split('\t', second_line)[2].startswith("chr"): #the re.split[1] is a ' ', so take the [2] - os.system("cat " + fimo_output_unsorted + " | sort -k 2 -V > " + fimo_output_file) + os.system("cat " + fimo_output_unsorted + " | sort -T " + tmp_path + " -k 2 -V > " + fimo_output_file) else: #we are sorting after the third column, which looks like chr1:123-126, -V means it will sort the digitals and not the strings - os.system("cat " + fimo_output_unsorted + " | sort -k 3 -V > " + fimo_output_file) + os.system("cat " + fimo_output_unsorted + " | sort -T " + tmp_path + " -k 3 -V > " + fimo_output_file) #make sure the output of fimo exists if not os.path.isfile(fimo_output_file): @@ -373,7 +374,7 @@ def call_moods(one_motif, genome, output_directory, p_value, moods_bg): with open(genome) as handle: seq_iterator = bio.SimpleFastaParser(handle) - + for header, seq in seq_iterator: header_splitted = re.split(r':', header) @@ -393,7 +394,7 @@ def call_moods(one_motif, genome, output_directory, p_value, moods_bg): fr = results[:len(matrix_names)] #forward strand rr = results[len(matrix_names):] #reverse strand - results = [[(r.pos, r.score, '+', ()) for r in fr[i]] + + results = [[(r.pos, r.score, '+', ()) for r in fr[i]] + [(r.pos, r.score, '-', ()) for r in rr[i]] for i in range(len(matrix_names))] #use + and - to indicate strand for (matrix, matrix_name, result) in zip(matrices, matrix_names, results): @@ -415,16 +416,17 @@ def call_moods(one_motif, genome, output_directory, p_value, moods_bg): if key_for_bed_dict != '': start = pos + 1 end = pos + len(hitseq) - chromosom = key_for_bed_dict #instead of only the name of chromosom write the key to search in the bed_file + chromosom = key_for_bed_dict #instead of only the name of chromosom write the key to search in the bed_file else: start = int(positions[0]) + pos + 1 end = start + len(hitseq) - 1 - + #moods_output_file_unsorted.write('\t'.join([motif_id, motif_alternate_name, chromosom, str(start), str(end), strand, str(score)]) + '\n') moods_output_file_unsorted.write('\t'.join([motif_id, motif_alternate_name, chromosom, str(start), str(end), strand, score]) + '\n') #now sort the output of moods - os.system("cat " + moods_output_unsorted_name + " | sort -k 1 -V > " + moods_output_name) + tmp_path = os.path.join(output_directory, "tmp/") + os.system("cat " + moods_output_unsorted_name + " | sort -T " + tmp_path + " -k 1 -V > " + moods_output_name) moods_output_file_unsorted.close() moods_output_file.close() @@ -469,10 +471,10 @@ def write_output_file(input_file, bed_dictionary, resolve_overlaps): logger.info('writing the output file ' + output_file_name) output_file = open(output_file_name, 'w') - + #calculate the real positions of TFs and write the information in the output file with open(input_file) as read_file: - + overlap = [] printed_line = [] last_line = [] @@ -480,11 +482,11 @@ def write_output_file(input_file, bed_dictionary, resolve_overlaps): for line in read_file: if not line.startswith('#'): - + line_to_write = [] - + line_array = re.split(r'\t', line.rstrip('\n')) - + chromosom_and_positions = re.split(r':', line_array[2]) if len(chromosom_and_positions) == 1: #the whole genome was given, there is nothing to split chromosom = line_array[2] @@ -494,8 +496,8 @@ def write_output_file(input_file, bed_dictionary, resolve_overlaps): positions = re.split(r'-', chromosom_and_positions[-1]) chromosom = chromosom_and_positions[0] start = str(int(positions[0]) + int(line_array[3])) - end = str(int(positions[0]) + int(line_array[4])) - key_for_bed_dict = line_array[2] #use only if there is a bed_dictionary in input + end = str(int(positions[0]) + int(line_array[4])) + key_for_bed_dict = line_array[2] #use only if there is a bed_dictionary in input #------- these are 5 needed columns to succesfully proceed the data @@ -526,7 +528,7 @@ def write_output_file(input_file, bed_dictionary, resolve_overlaps): write_line_not_overlap(output_file, line_to_write) - if not last_line[0].startswith('write'): #it could be that the write flag was deleted from the last_line so append it back + if not last_line[0].startswith('write'): #it could be that the write flag was deleted from the last_line so append it back overlap.insert(0, "write") #if there is already any printed line, check if the saved last line was already printed. Otherwise print it @@ -549,14 +551,14 @@ def check_overlap(line_to_write, overlap, printed_line, output_file): if not overlap: #if the overlap list is empty is_overlap = False - + else: #if the overlap list is not empty if not overlap[0].startswith('write'): #it could be that the write flag was deleted from the overlap so append it back to make sure the next if clauses run right overlap.insert(0, "write") if line_to_write[1] == overlap[1] and float(line_to_write[2]) < float(overlap[3]): #the current line could overlap the previous because the start of the current line is smaller than the end of the previous one and they are both on the one chromosom - #if p value in the current line is smaller than p value in the previous line (or score is bigger), save the current line as possible overlap for future + #if p value in the current line is smaller than p value in the previous line (or score is bigger), save the current line as possible overlap for future if float(line_to_write[5]) > float(overlap[5]): is_overlap = False else: @@ -589,7 +591,7 @@ def clean_directory(cleans, output_directory, motif, tool_output_file): fimo_output_unsorted = os.path.join(tool_output_file.replace("fimo_output", "fimo_output_unsorted")) moods_output_unsorted = os.path.join(tool_output_file.replace("moods_output", "moods_output_unsorted")) - + for clean in cleans: if clean == 'all': remove_file(motif) @@ -648,7 +650,7 @@ def multiprocess(motifs, genome, output_directory, cleans, fimo_data, p_value, b pool.close() pool.join() #make sure all the processes are done and exit - + #the processes should not delete the merged genome file #so make sure if this file is needed, otherwise delete it for clean in cleans: @@ -671,7 +673,7 @@ def make_bed_dictionary(bed_file): key = bed_line_array[0] + ":" + bed_line_array[1] + "-" + bed_line_array[2] value = [] for i in range(3, len(bed_line_array)): - value.append(bed_line_array[i]) + value.append(bed_line_array[i]) bed_dictionary[key] = value else: #this is not a bed file, force exit @@ -721,7 +723,7 @@ def main(): args = parse_args() - + if args.use == "fimo": check_fimo_version() @@ -736,20 +738,20 @@ def main(): check_directory(args.output_directory) splitted_motifs = split_motifs(args.motifs, args.output_directory, args.use) - + #check if there is a .bed file to merge the genome file with. If so, merge them if args.bed_file: bed_dictionary = make_bed_dictionary(args.bed_file) args.genome = merge(args.genome, args.bed_file, args.output_directory) else: bed_dictionary = {} - + #if the usage is moods, call moods, otherwise call fimo multiprocess(splitted_motifs, args.genome, args.output_directory, args.cleans, args.fimo, args.p_value, bed_dictionary, args.cores, args.resolve_overlaps, args.use, args.moods_bg) - + for handler in logger.handlers: handler.close() logger.removeFilter(handler) - + if __name__ == "__main__": - main() \ No newline at end of file + main() From 8c939dedb0640c3c2a255bac1186cb37db097b63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 12 Dec 2018 17:54:59 -0500 Subject: [PATCH 188/206] removed parameter --- config/create_gtf.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/create_gtf.config b/config/create_gtf.config index d1bbb12..c0718a6 100644 --- a/config/create_gtf.config +++ b/config/create_gtf.config @@ -1,4 +1,4 @@ params{ - organism="homo_sapiens" + organism="hg38" tissue="" } From d6f98989c1292b3750e1899ce9b9d6b30ad18081 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 12 Dec 2018 17:55:37 -0500 Subject: [PATCH 189/206] tfbsscan optional; minor fixes/changes --- pipeline.nf | 87 ++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 60 insertions(+), 27 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 516b7da..18b6745 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -1,11 +1,12 @@ #!/usr/bin/env nextflow //setting default values -params.input="" +params.bigwig="" params.bed="" params.genome_fasta="" -params.jaspar_db="" +params.motif_db="" params.config="" +params.tfbs_path="" //peak_calling params.window_length = 200 @@ -36,9 +37,9 @@ params.config="" params.min_seq = 10 // Minimum number of sequences in the fasta-files for glam2 //glam2 - params.motif_min_len = 8 // Minimum length of Motifs - params.motif_max_len = 20 // Maximum length of Motifs - params.interation = 10000 // Number of Iterations done by glam2. A high iteration number equals a more accurate result but with an higher runtime. + params.motif_min_key = 8 // Minimum number of key positions (aligned columns) + params.motif_max_key = 20 // Maximum number of key positions (aligned columns) + params.iteration = 10000 // Number of Iterations done by glam2. A high iteration number equals a more accurate result but with an higher runtime. //tomtom params.tomtom_treshold = 0.01 // threshold for similarity score. @@ -50,22 +51,26 @@ params.config="" params.best_motif = 3 // Top n motifs per cluster //creating_gtf - params.organism="homo_sapiens" + params.organism="hg38" params.tissue="" + params.tmpdir = "/mnt/workspace1/rene.wiegandt/tmp/" -if (params.input == "" || params.bed == "" || params.genome_fasta == "" || params.jaspar_db == "" || params.config == ""){ +if (params.bigwig == "" || params.bed == "" || params.genome_fasta == "" || params.motif_db == "" || params.config == ""){ log.info """ -Usage: nextflow run pipeline.nf --input [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --jaspar_db [MEME-file] +Usage: nextflow run pipeline.nf --bigwig [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --motif_db [MEME-file] Required arguments: - --input Path to BigWig-file + --bigwig Path to BigWig-file --bed Path to BED-file --genome_fasta Path to genome in FASTA-format --jaspar_db Path to motif-database in MEME-format Optional arguments: + + --tfbs_path Path to directory with output from tfbsscan. If given tfbsscan will not be run. + Footprint extraction: --window_length INT (Default: 200) --step INT (Default: 100) @@ -93,7 +98,7 @@ Optional arguments: Motif estimation: --motif_min_len INT Minimum length of Motif (Default: 8) --motif_max_len INT Maximum length of Motif (Default: 20) - --interation INT Number of iterations done by glam2. More Interations: better results, higher runtime. (Default: 10000) + --iteration INT Number of iterations done by glam2. More Iterations: better results, higher runtime. (Default: 10000) --tomtom_treshold float Threshold for similarity score. (Default: 0.01) Moitf clustering: @@ -101,19 +106,20 @@ Optional arguments: --motif_similarity_thresh FLOAT Threshold for motif similarity score (Default: 0.00001) Creating GTF: - --organism [homo_sapiens | mus_musculus] - --tissues + --organism [homo_sapiens | mus_musculus] + --tissues All arguments can be set in the configuration files. """ } else { - Channel.fromPath(params.input).map {it -> [it.simpleName, it]}.set {bigwig_input} + Channel.fromPath(params.bigwig).map {it -> [it.simpleName, it]}.set {bigwig_input} Channel.fromPath(params.bed).set {bed_input} Channel.fromPath(params.genome_fasta).into {fa_overlap; fa_scan; fa_overlap_2} - Channel.fromPath(params.jaspar_db).into {db_for_motivscan; db_for_tomtom} + Channel.fromPath(params.motif_db).into {db_for_motivscan; db_for_tomtom} Channel.fromPath(params.config).set {config} } +path_bin = path_bin?.endsWith('/') ? path_bin.substring( 0, path_bin.length() -1 ) : path_bin bigwig_input.combine(bed_input).set{footprint_in} /* @@ -123,8 +129,8 @@ process footprint_extraction { conda "${path_env}" tag{name} - publishDir "${out}", mode: 'copy', pattern: '*.bed' - publishDir "${out}/log", mode: 'copy', pattern: '*.log' + publishDir "${out}/footprint_extraction/", mode: 'copy', pattern: '*.bed' + publishDir "${out}/footprint_extraction/log", mode: 'copy', pattern: '*.log' input: set name, file (bigWig), file (bed) from footprint_in @@ -143,23 +149,38 @@ process footprint_extraction { */ process extract_known_TFBS { + conda "${path_env}" + publishDir "${out}/known_TFBS/", mode: 'copy', pattern: '*.bed' + input: file (fasta) from fa_overlap file (db) from db_for_motivscan output: - file ('*.bed') into known_TFBS_for_overlap + val ('done') into known_TFBS_for_overlap + //file ('*.bed') into known_TFBS_for_overlap + + when: + params.tfbs_path == "" script: """ - python ${path_bin}/tfbsscan.py --use moods --core ${params.threads} -m ${db} -g ${fasta} -o . + python ${path_bin}/tfbsscan.py --use moods --core ${params.threads} -m ${db} -g ${fasta} -o ${params.tmpdir} """ } -bed_for_overlap_with_TFBS.combine(known_TFBS_for_overlap).combine(fa_overlap_2).set {for_overlap} +if(params.tfbs_path == "") { + bed_for_overlap_with_TFBS.combine(known_TFBS_for_overlap.toList()).combine(fa_overlap_2).set {for_overlap} + motif_path = params.tmpdir +} else { + Channel.from('skipped').set {workaround} + bed_for_overlap_with_TFBS.combine(workaround).combine(fa_overlap_2).set {for_overlap} + tfbs = params.tfbs_path?.endsWith('/') ? params.tfbs_path: params.tfbs_path.substring( 0, params.tfbs_path.length() -1 ) + motif_path = tfbs +} /* @@ -167,19 +188,22 @@ bed_for_overlap_with_TFBS.combine(known_TFBS_for_overlap).combine(fa_overlap_2). process overlap_with_known_TFBS { conda "${path_env}" + publishDir "${out}/unknown_overlap/", mode: 'copy', pattern: '*.bed' + input: set name, file (bed_footprints), val (bed_motifs), file (fasta) from for_overlap output: - set name, file ('*.bed') into bed_for_reducing + set name, file ("${name}.bed") into bed_for_reducing + set name, file ("${name}.bed") into testetst script: motif_list = bed_motifs.toString().replaceAll(/\s|\[|\]/,"") """ - ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_list} --fasta ${fasta} -o ${name}.bed -min ${params.min_size_fp} -max ${params.max_size_fp} + ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_path} --fasta ${fasta} -o ${name}.bed -min ${params.min_size_fp} -max ${params.max_size_fp} -p ${path_bin} """ } - +testetst.println() /* */ @@ -204,6 +228,8 @@ process reduce_bed { process clustering { conda "${path_env}" + publishDir "${out}/cluster/", mode: 'copy', pattern: '*.bed' + input: set name, file (bed) from bed_for_clustering @@ -221,6 +247,7 @@ process clustering { Converting BED-File to one FASTA-File per cluster */ process bed_to_clustered_fasta { + conda "${path_env}" tag{name} @@ -262,7 +289,7 @@ process glam2 { script: """ - glam2 n ${fasta} -O . -a ${params.motif_min_len} -b ${params.motif_max_len} -z 5 -n ${params.interation} + glam2 n ${fasta} -O . -a ${params.motif_min_key} -b ${params.motif_max_key} -z 5 -n ${params.iteration} """ } @@ -312,6 +339,7 @@ files_for_merge_fasta = motif_similarity.combine(fasta_for_motif_cluster) process merge_fasta { + conda "${path_env}" input: set file (motiv_sim), val (fasta_list) from files_for_merge_fasta @@ -334,18 +362,20 @@ motif_clustered_fasta_flat = motif_clustered_fasta_list.flatten() process clustered_glam2 { + publishDir "${out}/esimated_motifs/${name}/", mode: 'copy' + input: file (fasta) from motif_clustered_fasta_flat output: set name, file ('*.meme') into clustered_meme_for_tomtom - set name, file ('*.meme') into clustered_meme_for_filter - file('*') + set name, file ('*.meme') into clustered_meme_for_filter + file('*') script: name = fasta.getBaseName() """ - glam2 n ${fasta} -O . -a ${params.motif_min_len} -b ${params.motif_max_len} -z 5 -n ${params.interation} + glam2 n ${fasta} -O . -a ${params.motif_min_key} -b ${params.motif_max_key} -z 5 -n ${params.iteration} """ } @@ -357,6 +387,7 @@ Tomtom searches motifs in databases. process tomtom { tag{name} + publishDir "${out}/esimated_motifs/tomtom/", mode: 'copy' input: set name, file (meme) from clustered_meme_for_tomtom @@ -373,7 +404,7 @@ process tomtom { //Joining channels with meme and tsv files. Filter joined channel on line count. //Only meme-files which corresponding tsv files have linecount <= 1 are writen to next channel. -for_filter = meme_for_filter.join( tsv_for_filter ) +for_filter = clustered_meme_for_filter.join( tsv_for_filter ) for_filter .filter { name, meme, tsv -> long count = tsv.readLines().size() @@ -403,6 +434,8 @@ process check_for_unknown_motifs { process get_best_motif { conda "${path_env}" + publishDir "${out}/esimated_motifs/unknown_motifs/", mode: 'copy' + input: set name, file(meme), file(tsv) from meme_for_scan From ff52b92265fb232c95a05eca11b3cd5dc4823e03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 12 Dec 2018 17:56:04 -0500 Subject: [PATCH 190/206] fixed yml-file --- masterenv.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/masterenv.yml b/masterenv.yml index a94a8cf..211f4e1 100644 --- a/masterenv.yml +++ b/masterenv.yml @@ -1,8 +1,5 @@ name: masterenv -channels: - - bioconda - - conda-forge dependencies: - r-seqinr - numpy From 9ff4281061d88be0ac627daddd59b824a1e94027 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Wed, 12 Dec 2018 17:56:56 -0500 Subject: [PATCH 191/206] minor changes --- nextflow.config | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nextflow.config b/nextflow.config index 47dc610..e35ca57 100644 --- a/nextflow.config +++ b/nextflow.config @@ -1,6 +1,6 @@ wd = "/mnt/agnerds/Rene.Wiegandt/10_Master/masterJLU2018" createTimeout = 60 -params.threads=1 //Parameter for for scripts! Not for nextflow processes. +params.threads=60 //Parameter for for scripts! Not for nextflow processes. params.config="${wd}/config/uropa.config" env { From 725d7c051cb9102034dd9b6a09bcb2319bace305 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Wed, 12 Dec 2018 23:59:03 +0100 Subject: [PATCH 192/206] Update README.md --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index e6b69e9..278cd05 100644 --- a/README.md +++ b/README.md @@ -53,7 +53,7 @@ Required arguments: Optional arguments: - --tfbs_path Path to directory with output BED-files from tfbsscan. If given tfbsscan will not be run. + --tfbs_path Path to directory with output BED-files from tfbsscan. If given tfbsscan will not be run. Footprint extraction: --window_length INT (Default: 200) a length of a window @@ -87,11 +87,11 @@ Optional arguments: Motif clustering: --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) - --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) + --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) - Creating GTF: - --tissue STRING Filter for one or more tissue/category activity, categories as in JSON config (Default: None) - --organism STRING Source organism: [ hg19 | hg38 or mm9 | mm10 ] (Default: hg38) + Creating GTF: + --tissue STRING Filter for one or more tissue/category activity, categories as in JSON config (Default: None) + --organism STRING Source organism: [ hg19 | hg38 or mm9 | mm10 ] (Default: hg38) All arguments can be set in the configuration files. ``` From 5275f1802b430f7ebcad8ce76129c11a9ec084aa Mon Sep 17 00:00:00 2001 From: anastasiia Date: Thu, 13 Dec 2018 17:36:35 +0100 Subject: [PATCH 193/206] we do not need this env --- bin/call_peaks.yaml | 9 --------- 1 file changed, 9 deletions(-) delete mode 100644 bin/call_peaks.yaml diff --git a/bin/call_peaks.yaml b/bin/call_peaks.yaml deleted file mode 100644 index 4d3eabd..0000000 --- a/bin/call_peaks.yaml +++ /dev/null @@ -1,9 +0,0 @@ -name: call_peaks - -channels: - - bioconda - - conda-forge - -dependencies: - - numpy - - pybigwig \ No newline at end of file From 1c5f769cadff9679de286eac70f06f63838fdcb8 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 13 Dec 2018 21:09:05 +0100 Subject: [PATCH 194/206] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 278cd05..fe310d7 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,8 @@ conda env create --name masterenv -f=$path ``` When the enviroment is created, set the variable 'path_env' in the configuration file as the path to it. +**Important Note:** For conda the channel bioconda needs to be set as highest priority! This required due two differnt packages with the same name in different channels. For the pipeline the package jellyfish from the channel bioconda is needed and **NOT** the jellyfisch package from the channel conda-forge! + ## Quick Start ```console nextflow run pipeline.nf --bigwig [BigWig-file] --bed [BED-file] --genome_fasta [FASTA-file] --motif_db [MEME-file] From 7d05d052e3c5f6ed65ca413d85d431c4491f4d0a Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Thu, 13 Dec 2018 21:14:55 +0100 Subject: [PATCH 195/206] Update merge.R --- bin/merge.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/merge.R b/bin/merge.R index c2015aa..8ee50e3 100644 --- a/bin/merge.R +++ b/bin/merge.R @@ -33,5 +33,5 @@ loss = formatC(1 - suma/sumb, digits=2) lengthb = formatC(mean(before$V3-before$V2), digits=4) lengtha = formatC(mean(splitted$length), digits=4) stats=data.frame(sum_nt_input=sumb, sum_nt_filtered=suma, factor=difference, loss=loss, mean_length_input=lengthb, mean_length_filtered=lengtha) -write.table(stats, "../FilterMotifs.stats", row.names=FALSE, quote=FALSE, sep='\t') +write.table(stats, "./FilterMotifs.stats", row.names=FALSE, quote=FALSE, sep='\t') From dc2363efeb01ce2da5559bd729d84e8c09a56507 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 13 Dec 2018 22:08:10 +0100 Subject: [PATCH 196/206] check prameters; minor fixes --- pipeline.nf | 71 +++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 61 insertions(+), 10 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index 18b6745..6ad4814 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -46,7 +46,7 @@ params.tfbs_path="" //cluster motifs params.edge_weight = 5 // Minimum weight of edges in motif-cluster-graph - motif_similarity_thresh = 0.00001 // threshold for motif similarity score + params.motif_similarity_thresh = 0.00001 // threshold for motif similarity score params.best_motif = 3 // Top n motifs per cluster @@ -119,6 +119,56 @@ All arguments can be set in the configuration files. Channel.fromPath(params.config).set {config} } +/* +Checking for parameter input! +*/ +int_params = ["window_length", "step", "min_size_fp", "max_size_fp", "kmer", + "aprox_motif_len", "motif_occurence", "min_seq_length", "global", + "sequence_coverage", "memory", "throw_away_seq", "strand", + "min_seq", "motif_min_key", "motif_max_key", "iteration", + "edge_weight", "best_motif"] +req_params = ["bigwig", "bed", "genome_fasta", "motif_db", "config"] + +valid_organism = ["hg38", "hg19", "mm9", "mm10"] + +params.each { key, value -> + if(int_params.contains(key)) { + if (!("${value}" ==~ /\d+/ )){ + println("ERROR: $key needs to be an Integer") + System.exit(2) + } + } + if(req_params.contains(key)) { + if(!file(value).exists()) { + println("ERROR: $key not found. Please check the given path.") + System.exit(2) + } + } +} +if (!("${params.identity}" ==~ /^0\.[8-9][[0-9]*]?|^1(\.0)?/ )){ + println("ERROR: --identity needs to be float in range 0.8 to 1.0") + System.exit(2) +} + +if (!valid_organism.contains(params.organism)) { + println("ERROR: Invalid organism! Valid organisms: " + valid_organism) + System.exit(2) +} +if (!("${params.percentage}" ==~ /\d+/ ) || params.percentage < 0 || params.percentage > 100 ){ + println("ERROR: --percentage needs to be an Integer between 0 and 100") + System.exit(2) +} + +if (!("${params.tomtom_treshold}" ==~ /([0-9]*\.[0-9]+|[0-9]+)/)) { + println("ERROR: --tomtom_treshold needs to be an Integer or float, e.g. 0.01") + System.exit(2) +} +if (!("${params.motif_similarity_thresh}" ==~ /([0-9]*\.[0-9]+|[0-9]+)/)) { + println("ERROR: --motif_similarity_thresh needs to be an Integer or float, e.g. 0.01") + System.exit(2) +} + + path_bin = path_bin?.endsWith('/') ? path_bin.substring( 0, path_bin.length() -1 ) : path_bin bigwig_input.combine(bed_input).set{footprint_in} @@ -144,7 +194,7 @@ process footprint_extraction { """ } -//Abfrage ob ausgeführt werden muss. + /* */ @@ -160,7 +210,6 @@ process extract_known_TFBS { output: val ('done') into known_TFBS_for_overlap - //file ('*.bed') into known_TFBS_for_overlap when: params.tfbs_path == "" @@ -171,7 +220,9 @@ process extract_known_TFBS { """ } - +/* +Sets path to known tfbs BED-files. If tfbs_path is set the process extract_known_TFBS is skipped, so the paths are differnt. +*/ if(params.tfbs_path == "") { bed_for_overlap_with_TFBS.combine(known_TFBS_for_overlap.toList()).combine(fa_overlap_2).set {for_overlap} motif_path = params.tmpdir @@ -195,7 +246,6 @@ process overlap_with_known_TFBS { output: set name, file ("${name}.bed") into bed_for_reducing - set name, file ("${name}.bed") into testetst script: motif_list = bed_motifs.toString().replaceAll(/\s|\[|\]/,"") @@ -203,12 +253,13 @@ process overlap_with_known_TFBS { ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_path} --fasta ${fasta} -o ${name}.bed -min ${params.min_size_fp} -max ${params.max_size_fp} -p ${path_bin} """ } -testetst.println() + /* */ process reduce_bed { conda "${path_env}" + echo true input: set name, file (bed) from bed_for_reducing @@ -227,6 +278,7 @@ process reduce_bed { */ process clustering { conda "${path_env}" + echo true publishDir "${out}/cluster/", mode: 'copy', pattern: '*.bed' @@ -321,7 +373,6 @@ Output table has the information which clusters are similar to each other. */ process find_similar_motifs { - input: file (merged_meme) from merged_meme @@ -369,8 +420,8 @@ process clustered_glam2 { output: set name, file ('*.meme') into clustered_meme_for_tomtom - set name, file ('*.meme') into clustered_meme_for_filter - file('*') + set name, file ('*.meme') into clustered_meme_for_filter + file('*') script: name = fasta.getBaseName() @@ -387,7 +438,7 @@ Tomtom searches motifs in databases. process tomtom { tag{name} - publishDir "${out}/esimated_motifs/tomtom/", mode: 'copy' + publishDir "${out}/esimated_motifs/tomtom/", mode: 'copy' input: set name, file (meme) from clustered_meme_for_tomtom From 1f45269bc54cc12a05396ade4f66a05a8865bc38 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 13 Dec 2018 23:24:18 +0100 Subject: [PATCH 197/206] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index fe310d7..2452e7d 100644 --- a/README.md +++ b/README.md @@ -82,13 +82,14 @@ Optional arguments: --strand INT Align +/+ & +/- (= 1). Or align only +/+ (= 0). (Default: 0) Motif estimation: + --min_seq INT Minimum number of sequences required in the FASTA-files for GLAM2 (Default: 100) --motif_min_key INT Maximum number of key positions (aligned columns) (Default: 8) --motif_max_key INT Maximum number of key positions (aligned columns) (Default: 20) --iteration INT Number of iterations done by glam2. More Iterations: better results, higher runtime. (Default: 10000) --tomtom_treshold float Threshold for similarity score. (Default: 0.01) Motif clustering: - --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) + --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 50) --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) Creating GTF: From b69682a933713c4246e7c82b19a67db0b834aa54 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Thu, 13 Dec 2018 23:25:03 +0100 Subject: [PATCH 198/206] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2452e7d..69e9661 100644 --- a/README.md +++ b/README.md @@ -37,7 +37,7 @@ conda env create --name masterenv -f=$path ``` When the enviroment is created, set the variable 'path_env' in the configuration file as the path to it. -**Important Note:** For conda the channel bioconda needs to be set as highest priority! This required due two differnt packages with the same name in different channels. For the pipeline the package jellyfish from the channel bioconda is needed and **NOT** the jellyfisch package from the channel conda-forge! +**Important Note:** For conda the channel bioconda needs to be set as highest priority! This is required due to two differnt packages with the same name in different channels. For the pipeline the package jellyfish from the channel bioconda is needed and **NOT** the jellyfisch package from the channel conda-forge! ## Quick Start ```console From ee039515335cc5607ca89df267fa9e660103aaf5 Mon Sep 17 00:00:00 2001 From: basti Date: Fri, 14 Dec 2018 11:23:43 +0100 Subject: [PATCH 199/206] Fixed bug in formatting (gff vs gtf). Converted feature description to lowercase. --- bin/Modules/Ensembl/GTFGen.py | 8 +++++--- bin/Modules/SaveResults.py | 7 ++----- bin/Modules/ucsc/ucsc.py | 12 +++++++++--- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/bin/Modules/Ensembl/GTFGen.py b/bin/Modules/Ensembl/GTFGen.py index 9753d39..ca57aa8 100644 --- a/bin/Modules/Ensembl/GTFGen.py +++ b/bin/Modules/Ensembl/GTFGen.py @@ -51,7 +51,7 @@ def reformat_to_gff(self, activity, release): # Add RegBuild_ + release templist.append("RegBuild_"+release) # Add Description from Description in last ; separated segment - templist.append(splitted_additional[4].split("=")[1]) + templist.append(splitted_additional[4].split("=")[1].lower()) # Add Start / End Data from original templist.extend(splitted[3:5]) # Add Score, Strand and Frame Data @@ -69,10 +69,12 @@ def reformat_to_gff(self, activity, release): def generate_additional_information(gene_id, activity): if gene_id.startswith("ID=regulatory_region:"): - gene_id = "ID="+gene_id.split(":")[1] + gene_id = 'ID "'+gene_id.split(':')[1]+'"' + + activity_string = 'activity "'+', '.join(activity)+'"' # helper method to concat activity information to string - return "; ".join([gene_id, "activity="+", ".join(activity)]) + return gene_id+'; '+activity_string def generate_activity_list(self, activity, index): # generates activity list diff --git a/bin/Modules/SaveResults.py b/bin/Modules/SaveResults.py index d285c25..66c2d97 100644 --- a/bin/Modules/SaveResults.py +++ b/bin/Modules/SaveResults.py @@ -1,10 +1,8 @@ -import csv import os class ResultSaver: - """ class to save the results. Path is dependent on the data_dir, tissuetype and mapped = True or False. @@ -26,7 +24,6 @@ def __init__(self, results, organism, wd, mapped, is_data_dir, tissue, out): else: self.path = os.path.join(out+"/"+organism+".gtf") - with open(self.path, "w") as file: - write_it = csv.writer(file, delimiter='\t') + with open(self.path, "w") as output_file: for line in results: - write_it.writerow(line) + output_file.write("\t".join(line)+"\n") diff --git a/bin/Modules/ucsc/ucsc.py b/bin/Modules/ucsc/ucsc.py index cd55976..a554a4d 100644 --- a/bin/Modules/ucsc/ucsc.py +++ b/bin/Modules/ucsc/ucsc.py @@ -41,13 +41,13 @@ def read_gff_to_gtf(self): sequence = [] sequence.append(row[0]) sequence.append("UCSC") - sequence.append(row[3]) + sequence.append(row[3].lower()) sequence.append(row[1]) sequence.append(row[2]) sequence.append(".") sequence.append(row[5]) sequence.append(".") - sequence.append("; ".join([self.find_ID("".join(row[11:])), ", ".join(self.get_activity(".".join(row[11:])))])) + sequence.append('; '.join([self.find_ID(''.join(row[11:])), 'activity \"'+", ".join(self.get_activity(''.join(row[11:]))) + '"'])) gtf_lines.append(sequence) return gtf_lines @@ -55,8 +55,14 @@ def read_gff_to_gtf(self): def find_ID(self, line): # Find RefSeq ID in Line pattern = re.compile(r'ID:[0-9]{,9}|$') + ref_id = re.search(pattern, line).group() + splitted = ref_id.split(":") + if len(splitted) == 2: + returnstring = str(splitted[0])+' "'+str(splitted[1])+'"' + else: + returnstring = 'ID '+'"NA"' - return re.search( pattern, line).group() + return returnstring def get_activity(self, line): # Find activity categories in bed file From 7aaf90c7ed9be0c9c654da61a4ed5895eb4ca1e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Fri, 14 Dec 2018 06:34:48 -0500 Subject: [PATCH 200/206] fixes --- README.md | 1 + bin/compareBed.sh | 12 +++--- bin/merge.R | 3 +- config/cluster.config | 2 +- config/motif_estimation.config | 5 ++- pipeline.nf | 79 +++++++++++++++++++++++----------- 6 files changed, 66 insertions(+), 36 deletions(-) diff --git a/README.md b/README.md index e6b69e9..1e4c4be 100644 --- a/README.md +++ b/README.md @@ -86,6 +86,7 @@ Optional arguments: --tomtom_treshold float Threshold for similarity score. (Default: 0.01) Motif clustering: + --cluster_motif BOOLEAN IF its 1 motifs will be clustered (Default: 0) --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) diff --git a/bin/compareBed.sh b/bin/compareBed.sh index f635283..426f3b4 100644 --- a/bin/compareBed.sh +++ b/bin/compareBed.sh @@ -148,7 +148,7 @@ then # mkdir workdir1337 #fi wo=true - workdir="." + workdir=$path fi if [ $ou == false ] @@ -223,7 +223,7 @@ echo calc maxScore Rscript --vanilla $path/maxScore.R "$workdir"/pass1Fa.bed #3 subtract overlapping regions for additional motifs -echo "also get subsequences with no overlap of overlapping sequences" +#echo "also get subsequences with no overlap of overlapping sequences" help=true if [ -d $"motifs" ] @@ -265,11 +265,13 @@ fi #4. remove short/long motivs, make unique ids (relevant for some splitted tfbs from subtract) and handle maxScorePosition # also creates a small output file with information about the comparison -Rscript --vanilla $path/merge.R $min $max "$workdir" $data - +Rscript --vanilla $path/merge.R $min $max $workdir $data +echo "------------------------------------------------------------" +echo $workdir +head -100 $workdir/merged.bed #5. add fasta sequences to bed and create fasta file -bedtools getfasta -fi $fasta -bed "$workdir"/merged.bed -bedOut > "$output" +bedtools getfasta -fi $fasta -bed $workdir/merged.bed -bedOut > $output bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta #6 clean up diff --git a/bin/merge.R b/bin/merge.R index c2015aa..0d349b5 100644 --- a/bin/merge.R +++ b/bin/merge.R @@ -22,7 +22,7 @@ splitted$length=splitted$stop - splitted$start splitted=cbind(splitted, containsMaxpos=0) splitted$containsMaxpos[intersect(which(splitted$start <= splitted$maxpos), which(splitted$stop > splitted$maxpos))] = 1 splitted$maxpos = splitted$maxpos - splitted$start -fwrite(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') +data.table::fwrite(splitted, paste(folder, "/merged.bed", sep=''), row.names=FALSE, col.names=FALSE, quote=FALSE, sep='\t') before = fread(args[4], header=FALSE) @@ -34,4 +34,3 @@ lengthb = formatC(mean(before$V3-before$V2), digits=4) lengtha = formatC(mean(splitted$length), digits=4) stats=data.frame(sum_nt_input=sumb, sum_nt_filtered=suma, factor=difference, loss=loss, mean_length_input=lengthb, mean_length_filtered=lengtha) write.table(stats, "../FilterMotifs.stats", row.names=FALSE, quote=FALSE, sep='\t') - diff --git a/config/cluster.config b/config/cluster.config index 1b444e2..1ba0b33 100644 --- a/config/cluster.config +++ b/config/cluster.config @@ -9,7 +9,7 @@ params{ global=0 identity=0.8 sequence_coverage=8 - memory=800 + memory=2000 throw_away_seq=9 strand=0 } diff --git a/config/motif_estimation.config b/config/motif_estimation.config index d12e13c..6d9712a 100644 --- a/config/motif_estimation.config +++ b/config/motif_estimation.config @@ -1,6 +1,6 @@ params { //bed_to_clustered_fasta - min_seq = 10 + min_seq = 50 //glam2 motif_min_len = 8 @@ -11,7 +11,8 @@ params { tomtom_treshold = 0.01 //motif Clustering - edge_weight = 5 + cluster_motif = 0 + edge_weight = 50 motif_similarity_thresh = 0.00001 best_motif = 3 } diff --git a/pipeline.nf b/pipeline.nf index 18b6745..4631803 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -34,7 +34,7 @@ params.tfbs_path="" //motif_estimation //bed_to_clustered_fasta - params.min_seq = 10 // Minimum number of sequences in the fasta-files for glam2 + params.min_seq = 100 // Minimum number of sequences in the fasta-files for glam2 //glam2 params.motif_min_key = 8 // Minimum number of key positions (aligned columns) @@ -45,7 +45,8 @@ params.tfbs_path="" params.tomtom_treshold = 0.01 // threshold for similarity score. //cluster motifs - params.edge_weight = 5 // Minimum weight of edges in motif-cluster-graph + params.cluster_motif = 0 // Boolean if 1 motifs are clustered else they are not + params.edge_weight = 50 // Minimum weight of edges in motif-cluster-graph motif_similarity_thresh = 0.00001 // threshold for motif similarity score params.best_motif = 3 // Top n motifs per cluster @@ -129,8 +130,8 @@ process footprint_extraction { conda "${path_env}" tag{name} - publishDir "${out}/footprint_extraction/", mode: 'copy', pattern: '*.bed' - publishDir "${out}/footprint_extraction/log", mode: 'copy', pattern: '*.log' + publishDir "${params.out}/footprint_extraction/", mode: 'copy', pattern: '*.bed' + publishDir "${params.out}/footprint_extraction/log", mode: 'copy', pattern: '*.log' input: set name, file (bigWig), file (bed) from footprint_in @@ -152,7 +153,7 @@ process extract_known_TFBS { conda "${path_env}" - publishDir "${out}/known_TFBS/", mode: 'copy', pattern: '*.bed' + publishDir "${params.out}/known_TFBS/", mode: 'copy', pattern: '*.bed' input: file (fasta) from fa_overlap @@ -187,28 +188,30 @@ if(params.tfbs_path == "") { */ process overlap_with_known_TFBS { conda "${path_env}" + echo true - publishDir "${out}/unknown_overlap/", mode: 'copy', pattern: '*.bed' + publishDir "${params.out}/unknown_overlap/" input: set name, file (bed_footprints), val (bed_motifs), file (fasta) from for_overlap output: - set name, file ("${name}.bed") into bed_for_reducing - set name, file ("${name}.bed") into testetst + set name, file ("*.bed") into bed_for_reducing + //set name, file ("${name}_un.bed") into testetst script: motif_list = bed_motifs.toString().replaceAll(/\s|\[|\]/,"") """ - ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_path} --fasta ${fasta} -o ${name}.bed -min ${params.min_size_fp} -max ${params.max_size_fp} -p ${path_bin} + ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_path} --fasta ${fasta} -o ${name}_un.bed -min ${params.min_size_fp} -max ${params.max_size_fp} -p ${path_bin} """ } -testetst.println() +//testetst.println() /* */ process reduce_bed { conda "${path_env}" + echo true input: set name, file (bed) from bed_for_reducing @@ -227,8 +230,9 @@ process reduce_bed { */ process clustering { conda "${path_env}" + echo true - publishDir "${out}/cluster/", mode: 'copy', pattern: '*.bed' + publishDir "${params.out}/cluster/", mode: 'copy', pattern: '*.bed' input: set name, file (bed) from bed_for_clustering @@ -254,9 +258,6 @@ process bed_to_clustered_fasta { input: set name, file (bed) from bed_for_motif_esitmation - when: - params.fasta == false - output: file ('*.FASTA') into fasta_for_glam2 file ('*.FASTA') into fasta_for_motif_cluster @@ -280,16 +281,19 @@ Generating Motifs through alignment and scoring best local matches. process glam2 { tag{name} + publishDir "${params.out}/esimated_motifs/clustered_motifs/${name}/", mode: 'copy' input: set name, file (fasta) from fasta_for_glam2 output: file("${name}/*.meme") into meme_to_merge + set name, file("${name}/*.meme") into meme_for_tomtom + set name, file("${name}/*.meme") into meme_for_filter script: """ - glam2 n ${fasta} -O . -a ${params.motif_min_key} -b ${params.motif_max_key} -z 5 -n ${params.iteration} + glam2 n ${fasta} -O ./${name}/ -a ${params.motif_min_key} -b ${params.motif_max_key} -z 5 -n ${params.iteration} """ } @@ -299,12 +303,17 @@ The paths are sorted numerically depending on the cluster number. */ process merge_meme { + publishDir "${params.out}/esimated_motifs/merged_meme/", mode: 'copy' + input: val (memelist) from meme_to_merge.toList() output: file ('merged_meme.meme') into merged_meme + when: + params.cluster_motif == 1 + script: memes = memelist.collect{it.toString().replaceAll(/\/glam2.meme/,"") } meme_sorted = memes.sort(false) { it.toString().tokenize('_')[-1] as Integer } @@ -321,13 +330,16 @@ Output table has the information which clusters are similar to each other. */ process find_similar_motifs { - + publishDir "${params.out}/esimated_motifs/cluster_similarity/", mode: 'copy' input: file (merged_meme) from merged_meme output: file ('all_to_all.tsv') into motif_similarity + when: + params.cluster_motif == 1 + script: """ tomtom ${merged_meme} ${merged_meme} -thresh ${params.motif_similarity_thresh} -text --norc | sed '/^#/ d' | sed '/^\$/d' > all_to_all.tsv @@ -340,17 +352,21 @@ files_for_merge_fasta = motif_similarity.combine(fasta_for_motif_cluster) process merge_fasta { conda "${path_env}" + publishDir "${params.out}/esimated_motifs/merged_fasta/", mode: 'copy' input: set file (motiv_sim), val (fasta_list) from files_for_merge_fasta output: file ('*.fasta') into motif_clustered_fasta_list - file('*.png') + file('*.png') + + when: + params.cluster_motif == 1 script: - fa_sorted = fasta_list.sort(false) { it.getBaseName().tokenize('_')[-1] as Integer } - fastalist = fa_sorted.toString().replaceAll(/\s|\[|\]/,"") + fa_sorted = fasta_list.sort(false) { it.getBaseName().tokenize('_')[-1] as Integer } + fastalist = fa_sorted.toString().replaceAll(/\s|\[|\]/,"") """ Rscript ${path_bin}/merge_similar_clusters.R ${motiv_sim} ${fastalist} ${params.edge_weight} """ @@ -362,7 +378,7 @@ motif_clustered_fasta_flat = motif_clustered_fasta_list.flatten() process clustered_glam2 { - publishDir "${out}/esimated_motifs/${name}/", mode: 'copy' + publishDir "${params.out}/final_esimated_motifs/${name}/", mode: 'copy' input: file (fasta) from motif_clustered_fasta_flat @@ -372,13 +388,24 @@ process clustered_glam2 { set name, file ('*.meme') into clustered_meme_for_filter file('*') + when: + params.cluster_motif == 1 + script: - name = fasta.getBaseName() + name = fasta.getBaseName() """ glam2 n ${fasta} -O . -a ${params.motif_min_key} -b ${params.motif_max_key} -z 5 -n ${params.iteration} """ } +if(params.cluster_motif == 1){ + for_tomtom = clustered_meme_for_tomtom + for_filter = clustered_meme_for_filter +} else { + for_tomtom = meme_for_tomtom + for_filter = meme_for_filter +} + /* Running Tomtom on meme-files generated by GLAM2. @@ -387,10 +414,10 @@ Tomtom searches motifs in databases. process tomtom { tag{name} - publishDir "${out}/esimated_motifs/tomtom/", mode: 'copy' + publishDir "${params.out}/final_esimated_motifs/tomtom/", mode: 'copy' input: - set name, file (meme) from clustered_meme_for_tomtom + set name, file (meme) from for_tomtom output: set name, file ('*.tsv') into tsv_for_filter @@ -404,8 +431,8 @@ process tomtom { //Joining channels with meme and tsv files. Filter joined channel on line count. //Only meme-files which corresponding tsv files have linecount <= 1 are writen to next channel. -for_filter = clustered_meme_for_filter.join( tsv_for_filter ) -for_filter +for_filter2 = for_filter.join( tsv_for_filter ) +for_filter2 .filter { name, meme, tsv -> long count = tsv.readLines().size() count <= 1 @@ -434,7 +461,7 @@ process check_for_unknown_motifs { process get_best_motif { conda "${path_env}" - publishDir "${out}/esimated_motifs/unknown_motifs/", mode: 'copy' + publishDir "${params.out}/esimated_motifs/unknown_motifs/", mode: 'copy' input: set name, file(meme), file(tsv) from meme_for_scan From 63548bd80dd310cc6264f23287df48ec36fd353e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Fri, 14 Dec 2018 08:05:14 -0500 Subject: [PATCH 201/206] fix --- bin/compareBed.sh | 3 --- config/motif_estimation.config | 2 +- nextflow.config | 2 +- pipeline.nf | 4 ++-- 4 files changed, 4 insertions(+), 7 deletions(-) diff --git a/bin/compareBed.sh b/bin/compareBed.sh index 426f3b4..97e4a82 100644 --- a/bin/compareBed.sh +++ b/bin/compareBed.sh @@ -267,9 +267,6 @@ fi Rscript --vanilla $path/merge.R $min $max $workdir $data -echo "------------------------------------------------------------" -echo $workdir -head -100 $workdir/merged.bed #5. add fasta sequences to bed and create fasta file bedtools getfasta -fi $fasta -bed $workdir/merged.bed -bedOut > $output bedtools getfasta -name -fi $fasta -bed "$output" -fo "$output".fasta diff --git a/config/motif_estimation.config b/config/motif_estimation.config index 6d9712a..2445d12 100644 --- a/config/motif_estimation.config +++ b/config/motif_estimation.config @@ -1,6 +1,6 @@ params { //bed_to_clustered_fasta - min_seq = 50 + min_seq = 10 //glam2 motif_min_len = 8 diff --git a/nextflow.config b/nextflow.config index e35ca57..969a9be 100644 --- a/nextflow.config +++ b/nextflow.config @@ -1,5 +1,5 @@ wd = "/mnt/agnerds/Rene.Wiegandt/10_Master/masterJLU2018" -createTimeout = 60 +createTimeout = 40 params.threads=60 //Parameter for for scripts! Not for nextflow processes. params.config="${wd}/config/uropa.config" diff --git a/pipeline.nf b/pipeline.nf index a947549..b0608be 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -247,12 +247,12 @@ process overlap_with_known_TFBS { set name, file (bed_footprints), val (bed_motifs), file (fasta) from for_overlap output: - set name, file ("${name}.bed") into bed_for_reducing + set name, file ("${name}_unknown.bed") into bed_for_reducing script: motif_list = bed_motifs.toString().replaceAll(/\s|\[|\]/,"") """ - ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_path} --fasta ${fasta} -o ${name}_un.bed -min ${params.min_size_fp} -max ${params.max_size_fp} -p ${path_bin} + ${path_bin}/compareBed.sh --data ${bed_footprints} --motifs ${motif_path} --fasta ${fasta} -o ${name}_unknown.bed -min ${params.min_size_fp} -max ${params.max_size_fp} -p ${path_bin} """ } From 0d9892a8c98d11d211377e67ced9df9d078f9977 Mon Sep 17 00:00:00 2001 From: renewiegandt Date: Fri, 14 Dec 2018 14:09:36 +0100 Subject: [PATCH 202/206] removed echo true from process --- pipeline.nf | 1 - 1 file changed, 1 deletion(-) diff --git a/pipeline.nf b/pipeline.nf index b0608be..a078df6 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -239,7 +239,6 @@ if(params.tfbs_path == "") { */ process overlap_with_known_TFBS { conda "${path_env}" - echo true publishDir "${params.out}/unknown_overlap/" From 651363865bc2040e35f53c2d311c67e679c7b67f Mon Sep 17 00:00:00 2001 From: SebastianBeyvers Date: Fri, 14 Dec 2018 14:29:17 +0100 Subject: [PATCH 203/206] Readme formatted --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 131b443..a884632 100644 --- a/README.md +++ b/README.md @@ -89,13 +89,13 @@ Optional arguments: --tomtom_treshold float Threshold for similarity score. (Default: 0.01) Motif clustering: - --cluster_motif BOOLEAN IF its 1 motifs will be clustered (Default: 0) + --cluster_motif BOOLEAN IF its 1 motifs will be clustered (Default: 0) --edge_weight INT Minimum weight of edges in motif-cluster-graph (Default: 5) - --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) + --motif_similarity_thresh FLOAT threshold for motif similarity score (Default: 0.00001) - Creating GTF: - --tissue STRING Filter for one or more tissue/category activity, categories as in JSON config (Default: None) - --organism STRING Source organism: [ hg19 | hg38 or mm9 | mm10 ] (Default: hg38) + Creating GTF: + --tissue STRING Filter for one or more tissue/category activity, categories as in JSON config (Default: None) + --organism STRING Source organism: [ hg19 | hg38 or mm9 | mm10 ] (Default: hg38) All arguments can be set in the configuration files. ``` From 8a306b1567104f055f38c714467fc86565efeb08 Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Fri, 14 Dec 2018 14:44:51 +0100 Subject: [PATCH 204/206] $"motifs" falsch -> "$motifs" richtig :) --- bin/compareBed.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/compareBed.sh b/bin/compareBed.sh index 97e4a82..db58a2c 100644 --- a/bin/compareBed.sh +++ b/bin/compareBed.sh @@ -226,7 +226,7 @@ Rscript --vanilla $path/maxScore.R "$workdir"/pass1Fa.bed #echo "also get subsequences with no overlap of overlapping sequences" help=true -if [ -d $"motifs" ] +if [ -d "$motifs" ] then for i in "$motifs"/*.bed do From fa5c83888efff98d305eec4d20982035db55bf37 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Wiegandt?= Date: Fri, 14 Dec 2018 08:59:37 -0500 Subject: [PATCH 205/206] minor fix --- pipeline.nf | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/pipeline.nf b/pipeline.nf index b0608be..ef2b0f5 100644 --- a/pipeline.nf +++ b/pipeline.nf @@ -239,7 +239,6 @@ if(params.tfbs_path == "") { */ process overlap_with_known_TFBS { conda "${path_env}" - echo true publishDir "${params.out}/unknown_overlap/" @@ -302,7 +301,7 @@ Converting BED-File to one FASTA-File per cluster */ process bed_to_clustered_fasta { conda "${path_env}" - + publishDir "${params.out}/esimated_motifs/clustered_motifs/clustered_fasta/", mode: 'copy' tag{name} input: @@ -400,6 +399,10 @@ process find_similar_motifs { files_for_merge_fasta = motif_similarity.combine(fasta_for_motif_cluster) + +/* +Merging FASTA-files of similar clusters +*/ process merge_fasta { conda "${path_env}" publishDir "${params.out}/esimated_motifs/merged_fasta/", mode: 'copy' @@ -474,7 +477,7 @@ process tomtom { script: """ - tomtom ${meme} ${jaspar_db} -thresh ${params.thresh} -mi 1 -text | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv + tomtom ${meme} ${params.motif_db} -thresh ${params.thresh} -mi 1 -text | sed '/^#/ d' | sed '/^\$/d' > ${name}_known_motif.tsv """ } From 8669b3e802d95e4eb879689f26d076392f4c2a0c Mon Sep 17 00:00:00 2001 From: JannikHamp Date: Fri, 14 Dec 2018 15:14:44 +0100 Subject: [PATCH 206/206] added info for FilterMotifs.stats --- bin/merge.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/merge.R b/bin/merge.R index 0d349b5..129e41d 100644 --- a/bin/merge.R +++ b/bin/merge.R @@ -32,5 +32,5 @@ difference = formatC(sumb/suma, digits=4) loss = formatC(1 - suma/sumb, digits=2) lengthb = formatC(mean(before$V3-before$V2), digits=4) lengtha = formatC(mean(splitted$length), digits=4) -stats=data.frame(sum_nt_input=sumb, sum_nt_filtered=suma, factor=difference, loss=loss, mean_length_input=lengthb, mean_length_filtered=lengtha) +stats=data.frame(sum_nt_input=sumb, sum_nt_filtered=suma, factor=difference, loss=loss, mean_length_input=lengthb, mean_length_filtered=lengtha, flag_1_ratio=length(which(splitted$containsMaxpos == 1))/dim(splitted)[1]) write.table(stats, "../FilterMotifs.stats", row.names=FALSE, quote=FALSE, sep='\t')

    2. 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

    lSfZg8T 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