INNER CODE UNIT · Python

fasta_sample_iter

BigDataBiology/SemiBin · SemiBin/main.py:922

    def fasta_sample_iter(fn):
        for h,seq in fasta_iter(fn):
            if args.separator not in h:
                raise ValueError(
                    f"Expected contigs to contain separator character ({args.separator}), found {h}")
            sample_name, contig_name = h.split(args.separator, 1)
            yield sample_name, contig_name, seq

    for sample_name, contigs in groupby(fasta_sample_iter(args.contig_fasta), lambda sn_cn_seq : sn_cn_seq[0]):
        with utils.possibly_compressed_write(os.path.join(args.output, 'samples', f'{sample_name}.fa')) as out:
            longest = 0
            for _, contig_name, seq in contigs:
                out.write(f'>{contig_name}\n{seq}\n')
                contig_lengths.append(len(seq))
                longest = max(longest, len(seq))
        sample_longest[sample_name] = longest
        sample_list.append(sample_name)
    if not contig_lengths:

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…