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