def sort_sams(sam_paths, output_dir): sorted_sam_paths = list() for sam_path in sam_paths: sam_sorted_prefix = os.path.join(output_dir, "sorted_{}".format(libdcamp.common.get_base_name(sam_path))) sam_sorted_path = "{}.sam".format(sam_sorted_prefix) sorted_sam_paths.append(sam_sorted_path) if os.path.exists(sam_sorted_path): continue picardtools.sort_sam(sam_path, sam_sorted_path, "coordinate") assert len(sorted_sam_paths) return sorted_sam_paths
def sort_bam(bam_path, output_dir): sorted_bam_path = os.path.join(output_dir, "sorted_" + os.path.basename(bam_path)) if not os.path.exists(sorted_bam_path): picardtools.sort_sam(bam_path, sorted_bam_path, "coordinate") return sorted_bam_path