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

        • 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
        • SEQadmin2
          From Collection to Sequencing: Why Sample Preparation and Preservation Define Sequencing Data
          by SEQadmin2


          Data variability is still an issue in sequencing technologies despite the advances in reproducibility and accuracy of these platforms. But the problem does not originate in the sequencing itself, but in the previous steps, before the sample reaches the sequencer.


          The first step is collection, followed by preservation and sample preparation for analysis. Most scientists overlook those steps, but not being careful might just be skewing the experiment’s results.
          ...
          06-02-2026, 10:05 AM

        ad_right_rmr

        Collapse

        News

        Collapse

        Topics Statistics Last Post
        Started by SEQadmin2, 06-26-2026, 11:10 AM
        0 responses
        12 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 06-17-2026, 06:09 AM
        0 responses
        48 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 06-09-2026, 11:58 AM
        0 responses
        107 views
        0 reactions
        Last Post SEQadmin2  
        Started by SEQadmin2, 06-05-2026, 10:09 AM
        0 responses
        125 views
        0 reactions
        Last Post SEQadmin2  
        Working...