Exemple #1
0
    def make_READnome(self, fq_id, run_ID, buff=500, out_path=None):

        if out_path != None:
            fout_name = os.path.split(fq_id)[-1]
            fout = os.path.join(out_path, fout_name)
        else:
            fout = os.path.split(fq_id)[-1]

        asm = "{}.asm.out".format(fout)
        fa = "{}.asm.fa".format(fout)

        G = GenerateRADnome()
        G.make_READnome(asm, fa, buff, run_ID, out_path)
        return 1
Exemple #2
0
    def make_RADnome(self, fq1, fq2, run_ID, N_padding, insert_size,
                     proportion, overlap, out_path=None):

        def seq_len(fq):
            with open(fq,'rU') as fin:
                fin.readline()
                return len(fin.readline().strip())

        if out_path != None:
            fout1 = os.path.split(fq1)[-1]
            fout2 = os.path.split(fq2)[-1]

            fout1 = os.path.join(out_path, fout1)
            fout2 = os.path.join(out_path, fout2)

            run_ID = os.path.join(out_path, run_ID)
        else:
            fout1 = os.path.split(fq1)[-1]
            fout2 = os.path.split(fq2)[-1]

        rad1 = "{}.asm.fa".format(fout1)
        rad2 = "{}.asm.fa".format(fout2)

        r1_contig_len = seq_len(fq1)
        r2_contig_len = seq_len(fq2)

        contig_2_contig_dict = "{}.R1_to_R2_contig_associations.pkl".format(run_ID)
        run_name = run_ID
        # N_padding = 500
        # insert_size = 50
        # proportion = 0.8
        # overlap = 10

        self.create_faidx(rad1)
        self.create_faidx(rad2)

        G = GenerateRADnome()
        G.contigs_2_RADnome(rad1, rad2, r1_contig_len,
                  r2_contig_len, contig_2_contig_dict,
                  run_name, N_padding, insert_size,
                  proportion, overlap)
        return 1