Unconfigured Ad

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts
  • cmccabe
    Senior Member
    • Jul 2012
    • 355

    strip header off sam header using bam

    I am trying to remove the SAM header from a bam file. Using the below code I get:

    Code:
     samtools view -H IonXpress_009_150603.bam > header.sam | cat header.sam bedfile.bed > new_file.bed
    current output:
    Code:
    @HD	VN:1.4	GO:none	SO:coordinate
    @SQ	SN:chr1	LN:249250621
    @SQ	SN:chr2	LN:243199373
    @SQ	SN:chr3	LN:198022430
    @SQ	SN:chr4	LN:191154276
    @SQ	SN:chr5	LN:180915260
    @SQ	SN:chr6	LN:171115067
    @SQ	SN:chr7	LN:159138663
    @SQ	SN:chr8	LN:146364022
    @SQ	SN:chr9	LN:141213431
    @SQ	SN:chr10	LN:135534747
    @SQ	SN:chr11	LN:135006516
    @SQ	SN:chr12	LN:133851895
    @SQ	SN:chr13	LN:115169878
    @SQ	SN:chr14	LN:107349540
    @SQ	SN:chr15	LN:102531392
    @SQ	SN:chr16	LN:90354753
    @SQ	SN:chr17	LN:81195210
    @SQ	SN:chr18	LN:78077248
    @SQ	SN:chr19	LN:59128983
    @SQ	SN:chr20	LN:63025520
    @SQ	SN:chr21	LN:48129895
    @SQ	SN:chr22	LN:51304566
    @SQ	SN:chrX	LN:155270560
    @SQ	SN:chrY	LN:59373566
    @SQ	SN:chrM	LN:16569
    @RG	ID:X28LU.IonXpress_008	PL:IONTORRENT	PU:proton/P1.1.17/IonXpress_008	FO:TACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACG	DT:2015-09-02T17:20:14-0700	SM:BC8 pool I	PG:tmap	KS:TCAGTTCCGATAACGAT	CN:TorrentServer/Proton
    @RG	ID:X28LU.IonXpress_008.1	PL:IONTORRENT	PU:proton/P1.1.17/IonXpress_008	FO:TACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACG	DT:2015-09-02T16:29:13-0700	SM:BC8 pool I	PG:tmap	KS:TCAGTTCCGATAACGAT	CN:TorrentServer/Proton
    @RG	ID:X28LU.IonXpress_008.10	PL:IONTORRENT	PU:proton/P1.1.17/IonXpress_008	FO:TACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACG	DT:2015-09-02T14:03:04-0700	SM:BC8 pool I	PG:tmap	KS:TCAGTTCCGATAACGAT	CN:TorrentServer/Proton
    @RG	ID:X28LU.IonXpress_008.11	PL:IONTORRENT	PU:proton/P1.1.17/IonXpress_008	FO:TACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACG	DT:2015-09-02T13:33:05-0700	SM:BC8 pool I	PG:tmap	KS:TCAGTTCCGATAACGAT	CN:TorrentServer/Proton
    @RG	ID:X28LU.IonXpress_008.12	PL:IONTORRENT	PU:proton/P1.1.17/IonXpress_008	FO:TACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACGTCTGAGCATCGATCGATGTACAGCTACGTACG	DT:2015-09-02T13:32:53-0700	SM:BC8 pool I	PG:tmap	KS:TCAGTTCCGATAACGAT	CN:TorrentServer/Proton
    @RG	ID:X28LU.IonXpress_008.13	PL:IONTORRENT	PU:proton/P1.1.17/IonXpress_008
    Desired output:

    Code:
    @HD	VN:1.4	GO:none	SO:coordinate
    @SQ	SN:chr1	LN:249250621
    @SQ	SN:chr2	LN:243199373
    @SQ	SN:chr3	LN:198022430
    @SQ	SN:chr4	LN:191154276
    @SQ	SN:chr5	LN:180915260
    @SQ	SN:chr6	LN:171115067
    @SQ	SN:chr7	LN:159138663
    @SQ	SN:chr8	LN:146364022
    @SQ	SN:chr9	LN:141213431
    @SQ	SN:chr10	LN:135534747
    @SQ	SN:chr11	LN:135006516
    @SQ	SN:chr12	LN:133851895
    @SQ	SN:chr13	LN:115169878
    @SQ	SN:chr14	LN:107349540
    @SQ	SN:chr15	LN:102531392
    @SQ	SN:chr16	LN:90354753
    @SQ	SN:chr17	LN:81195210
    @SQ	SN:chr18	LN:78077248
    @SQ	SN:chr19	LN:59128983
    @SQ	SN:chr20	LN:63025520
    @SQ	SN:chr21	LN:48129895
    @SQ	SN:chr22	LN:51304566
    @SQ	SN:chrX	LN:155270560
    @SQ	SN:chrY	LN:59373566
    @SQ	SN:chrM	LN:16569   (the below lines are the contents of bedfile)
    chr1	955542	955763	chr1:955542-955763	+	AGRN:exon.1
    chr1	957570	957852	chr1:957570-957852	+	AGRN:exon.2
    chr1	976034	976270	chr1:976034-976270	+	AGRN:exon.2;AGRN:exon.3;AGRN:exon.4
    Thank you .
  • GenoMax
    Senior Member
    • Feb 2008
    • 7142

    #2
    This should do what you want.

    Code:
    $ samtools view -H IonXpress_009_150603.bam | cat - bedfile.bed > new_file.bed
    Edit: This won't strip the @RG lines (though that can done easily). You should consider Peter's point below.
    Last edited by GenoMax; 09-19-2015, 01:05 AM.

    Comment

    • maubp
      Peter (Biopython etc)
      • Jul 2009
      • 1544

      #3
      If you remove the read groups (@RG) from the header, you should also remove them from the reads...
      Last edited by maubp; 09-19-2015, 12:42 AM. Reason: typo

      Comment

      • cmccabe
        Senior Member
        • Jul 2012
        • 355

        #4
        So something like (hopefully it's close):

        Code:
         samtools view -H IonXpress_009_150603.bam | sed '/^@RG/d'| cat - bedfile.bed > new_file.bed
        Thank you .

        EDIT: this command is close (probably not the best), but why isn't the bed file being used like it was before?

        Code:
        samtools view -H /media/cmccabe/C2F8EFBFF8EFAFB9/pool_I_090215/IonXpress_008_150902.bam | sed '/^@RG/d' | sed 's/{"flow.*//' | sed 's/--.*//' | sed 's/@PG.*//' | cat - /home/cmccabe/Desktop/NGS/bed/modified_sorted_IDT.bed > /home/cmccabe/Desktop/NGS/bed/new_file.bed
        new_file.bed output:
        Code:
        @HD	VN:1.4	GO:none	SO:coordinate
        @SQ	SN:chr1	LN:249250621
        @SQ	SN:chr2	LN:243199373
        @SQ	SN:chr3	LN:198022430
        @SQ	SN:chr4	LN:191154276
        @SQ	SN:chr5	LN:180915260
        @SQ	SN:chr6	LN:171115067
        @SQ	SN:chr7	LN:159138663
        @SQ	SN:chr8	LN:146364022
        @SQ	SN:chr9	LN:141213431
        @SQ	SN:chr10	LN:135534747
        @SQ	SN:chr11	LN:135006516
        @SQ	SN:chr12	LN:133851895
        @SQ	SN:chr13	LN:115169878
        @SQ	SN:chr14	LN:107349540
        @SQ	SN:chr15	LN:102531392
        @SQ	SN:chr16	LN:90354753
        @SQ	SN:chr17	LN:81195210
        @SQ	SN:chr18	LN:78077248
        @SQ	SN:chr19	LN:59128983
        @SQ	SN:chr20	LN:63025520
        @SQ	SN:chr21	LN:48129895
        @SQ	SN:chr22	LN:51304566
        @SQ	SN:chrX	LN:155270560
        @SQ	SN:chrY	LN:59373566
        @SQ	SN:chrM	LN:16569
        Last edited by cmccabe; 09-19-2015, 06:03 AM. Reason: added new command

        Comment

        Latest Articles

        Collapse

        • GATTACAT
          Reply to Nine Things a Sample Prep Scientist Thinks About Before Sequencing
          by GATTACAT
          Love this - good data definitely starts from good input, and poor input can only give relatively poor data. I particularly like the mention of Nanodrop/absorbance based methods for quantification. It's such a toss up if you'll get an accurate reading or what amounts to a randomly generated number, and a lot of library/sequencing related issues can be traced back to poor quant.
          07-01-2026, 11:43 AM
        • SEQadmin2
          Nine Things a Sample Prep Scientist Thinks About Before Sequencing
          by SEQadmin2


          I’m not a sequencing expert. I’m a purification scientist who uses NGS to evaluate workflows my group develops. With this perspective, we think about the sample first and the NGS workflow second. The sequencer is an exceptionally honest reporter, but it can only report on what you give it, so whether you get clean, interpretable data from an NGS workflow is largely determined before you begin.

          Here are nine questions we think about, in roughly the order they matter, before...
          06-18-2026, 07:11 AM

        ad_right_rmr

        Collapse

        News

        Collapse

        Topics Statistics Last Post
        Started by SEQadmin2, Yesterday, 11:08 AM
        0 responses
        6 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 06-30-2026, 05:37 AM
        0 responses
        11 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 06-26-2026, 11:10 AM
        0 responses
        19 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 06-17-2026, 06:09 AM
        0 responses
        53 views
        0 reactions
        Last Post SEQadmin2  
        Working...