Beispiel #1
0
 def _combine_file(self, prefixs, args_pro):
     '''combine all TSS file in the input folder to generate the 
     global TSS for detecting the global promoter'''
     if args_pro.source:
         for tss in os.listdir(self.tss_path):
             if tss.endswith("_TSS.gff"):
                 self.helper.merge_file(os.path.join(self.tss_path, tss),
                                        self.all_tss)
         for fasta in os.listdir(args_pro.fastas):
             if (fasta.endswith(".fa")) or (fasta.endswith(".fna")) or (
                     fasta.endswith(".fasta")):
                 self.helper.merge_file(
                     os.path.join(args_pro.fastas, fasta), self.all_fasta)
     else:
         for tss in os.listdir(
                 os.path.join(args_pro.output_folder, "TSS_class")):
             if tss.endswith("_TSS.gff"):
                 self.helper.merge_file(os.path.join(self.tss_path, tss),
                                        self.all_tss)
         for fasta in os.listdir(args_pro.fastas):
             if (fasta.endswith(".fa")) or (fasta.endswith(".fna")) or (
                     fasta.endswith(".fasta")):
                 self.helper.merge_file(
                     os.path.join(args_pro.fastas, fasta), self.all_fasta)
     print("Generating fasta file of all fasta files")
     prefixs.append("allfasta")
     input_path = os.path.join(self.out_fasta, "allfasta")
     self.helper.check_make_folder(
         os.path.join(args_pro.output_folder, "allfasta"))
     self.helper.check_make_folder(os.path.join(self.out_fasta, "allfasta"))
     args_pro.source = True
     upstream(self.all_tss, self.all_fasta, None, None, args_pro, None)
     self._move_and_merge_fasta(input_path, "allfasta")
Beispiel #2
0
 def _combine_file(self, prefixs, args_pro):
     if args_pro.source:
         for tss in os.listdir(self.tss_path):
             if tss.endswith("_TSS.gff"):
                 self.helper.merge_file(os.path.join(
                      self.tss_path, tss), self.all_tss)
         for fasta in os.listdir(args_pro.fastas):
             if (fasta.endswith(".fa")) or (
                     fasta.endswith(".fna")) or (
                     fasta.endswith(".fasta")):
                 self.helper.merge_file(os.path.join(
                      args_pro.fastas, fasta), self.all_fasta)
     else:
         for tss in os.listdir(os.path.join(
                               args_pro.output_folder, "TSS_class")):
             if tss.endswith("_TSS.gff"):
                 self.helper.merge_file(os.path.join(
                      self.tss_path, tss), self.all_tss)
         for fasta in os.listdir(args_pro.fastas):
             if (fasta.endswith(".fa")) or (
                     fasta.endswith(".fna")) or (
                     fasta.endswith(".fasta")):
                 self.helper.merge_file(os.path.join(
                      args_pro.fastas, fasta), self.all_fasta)
     print("generating fasta file of all fasta files")
     prefixs.append("allfasta")
     input_path = os.path.join(self.out_fasta, "allfasta")
     self.helper.check_make_folder(os.path.join(
                                   args_pro.output_folder, "allfasta"))
     self.helper.check_make_folder(os.path.join(
                                   self.out_fasta, "allfasta"))
     args_pro.source = True
     upstream(self.all_tss, self.all_fasta, None,
              None, args_pro)
     self._move_and_merge_fasta(input_path, "allfasta")
Beispiel #3
0
 def _get_upstream(self, args_pro, prefix, tss, fasta):
     '''get upstream sequence of TSS'''
     if args_pro.source:
         print("Generating fasta file of {0}".format(prefix))
         upstream(os.path.join(self.tss_path, tss),
                  os.path.join(args_pro.fastas, fasta),
                  None, None, args_pro, prefix)
     else:
         if (args_pro.gffs is None):
             print("Error: Please assign proper annotation!!!")
             sys.exit()
         if "TSS_classes" not in os.listdir(args_pro.output_folder):
             os.mkdir(os.path.join(args_pro.output_folder, "TSS_classes"))            
         print("Classifying TSSs and extracting sequence of {0}".format(prefix))
         upstream(os.path.join(self.tss_path, tss),
                  os.path.join(args_pro.fastas, fasta),
                  os.path.join(self.gff_path, prefix + ".gff"),
                  os.path.join(args_pro.output_folder, "TSS_classes",
                  "_".join([prefix, "TSS.gff"])), args_pro, prefix)
Beispiel #4
0
 def _get_upstream(self, args_pro, prefix, tss, fasta):
     '''get upstream sequence of TSS'''
     if args_pro.source:
         print("Generating fasta file of {0}".format(prefix))
         upstream(os.path.join(self.tss_path, tss),
                  os.path.join(args_pro.fastas, fasta),
                  None, None, args_pro, prefix)
     else:
         if (args_pro.gffs is None):
             print("Error: Please assign proper annotation!!!")
             sys.exit()
         if "TSS_classes" not in os.listdir(args_pro.output_folder):
             os.mkdir(os.path.join(args_pro.output_folder, "TSS_classes"))            
         print("Classifying TSSs and extracting sequence of {0}".format(prefix))
         upstream(os.path.join(self.tss_path, tss),
                  os.path.join(args_pro.fastas, fasta),
                  os.path.join(self.gff_path, prefix + ".gff"),
                  os.path.join(args_pro.output_folder, "TSS_classes",
                  "_".join([prefix, "TSS.gff"])), args_pro, prefix)
Beispiel #5
0
 def _get_upstream(self, args_pro, prefix, tss, fasta):
     if args_pro.source:
         print("generating fasta file of {0}".format(prefix))
         upstream(os.path.join(self.tss_path, tss),
                  os.path.join(args_pro.fastas, fasta), None, None,
                  args_pro)
     else:
         if (args_pro.gffs is None) or (args_pro.wigs is None) or (
                 args_pro.input_libs is None):
             print("Error:please assign proper annotation, tex +/- "
                   "wig folder and tex treated libs!!!")
             sys.exit()
         if "TSS_class" not in os.listdir(args_pro.output_folder):
             os.mkdir(os.path.join(args_pro.output_folder, "TSS_class"))
         print("classifying TSS and extracting fasta {0}".format(prefix))
         upstream(
             os.path.join(self.tss_path, tss),
             os.path.join(args_pro.fastas, fasta),
             os.path.join(self.gff_path, prefix + ".gff"),
             os.path.join(args_pro.output_folder, "TSS_class",
                          "_".join([prefix, "TSS.gff"])), args_pro)
Beispiel #6
0
 def _get_upstream(self, args_pro, prefix, tss, fasta):
     if args_pro.source:
         print("generating fasta file of {0}".format(prefix))
         upstream(os.path.join(self.tss_path, tss),
                  os.path.join(args_pro.fastas, fasta),
                  None, None, args_pro)
     else:
         if (args_pro.gffs is None) or (
                 args_pro.wigs is None) or (
                 args_pro.input_libs is None):
             print("Error:please assign proper annotation, tex +/- "
                   "wig folder and tex treated libs!!!")
             sys.exit()
         if "TSS_class" not in os.listdir(args_pro.output_folder):
             os.mkdir(os.path.join(args_pro.output_folder, "TSS_class"))
         print("classifying TSS and extracting fasta {0}".format(prefix))
         upstream(os.path.join(self.tss_path, tss),
                  os.path.join(args_pro.fastas, fasta),
                  os.path.join(self.gff_path, prefix + ".gff"),
                  os.path.join(args_pro.output_folder, "TSS_class",
                  "_".join([prefix, "TSS.gff"])), args_pro)