[samtools reheader] Can't change chromosome name
1
0
Entering edit mode
7.6 years ago

I have a BAM file (containing reads mapped to only one chromosome), that has a very long header. I need to replace the long header of the chromosome by "chrM" and did the following:

samtools view -H my.bam > header.sam


Both header.sam and header_corrected.sam have the appropriate header. This query doesn't work and only displays a bunch of unreadable characters just as is I didn't use samtools to read the bam file.. what's wrong with my query? Is there another way to substitute "longheader" with "chrM"?

samtools bam reheader • 3.3k views
3
Entering edit mode
7.6 years ago
cts ★ 1.7k

My guess would be that samtools reheader outputs a bam file which is a binary representation of the text from a sam file. That is why you're getting all those unreadable characters on your screen. To test this out try to redirect the output to a file and then use samtools view to see the text representation.

$samtools reheader header_corrected.sam my.bam >new.bam$ samtools view new.bam

1
Entering edit mode

Your guess is correct. Samtools will never modify a file in place, since that would almost certainly lead to a corrupted file.

0
Entering edit mode

It worked well, thanks :)