Seqanswers Leaderboard Ad

Collapse

Announcement

Collapse
No announcement yet.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • How to get index files using picard

    Hi,
    Am new to this and just reading manuals to get some work done quickly. Am trying to generate an index file to use with Scripture using picard-tools but am getting an error that I don't understand. Does anyone have a clue what am missing here. The error is below:

    /Data/RNA_seq$ java -jar /home/mh/Data/seq/picard-tools-1.36/SortSam.jar I=GSM520_ES.aligned.sam O=GSM520.sorted.sam SO=coordinate
    [Sat Feb 12 23:29:02 EST 2011] net.sf.picard.sam.SortSam INPUT=GSM520_ES.aligned.sam OUTPUT=GSM520.sam SORT_ORDER=unsorted TMP_DIR=/tmp/mh VERBOSITY=INFO QUIET=false VALIDATION_STRINGENCY=STRICT COMPRESSION_LEVEL=5 MAX_RECORDS_IN_RAM=500000 CREATE_INDEX=false CREATE_MD5_FILE=false
    [Sat Feb 12 23:29:02 EST 2011] net.sf.picard.sam.SortSam done.
    Runtime.totalMemory()=252379136
    Exception in thread "main" net.sf.samtools.SAMFormatException: Error parsing text SAM file. Empty sequence dictionary.; Line 1
    Line: SL-XAS:8:97:1621:1389#0 0 chr1 3044508 0 76M * 0 0 AGAGCGCATAGCCCAAGCCTTACCACTCCCACTATTCGGCCATTTCCCTTATATGAAAGAGGAGCGAGGACCTTCC abab`b`abaaa^`aab`ababaYa`aa_Za_aaaa`aa^_aaaa_]ZbaabXbbV\Wb_aa\a]aUa_^\VV\_W NM:i:0
    at net.sf.samtools.SAMTextReader.reportErrorParsingLine(SAMTextReader.java:220)
    at net.sf.samtools.SAMTextReader.access$500(SAMTextReader.java:40)
    at net.sf.samtools.SAMTextReader$RecordIterator.parseLine(SAMTextReader.java:424)
    at net.sf.samtools.SAMTextReader$RecordIterator.next(SAMTextReader.java:268)
    at net.sf.samtools.SAMTextReader$RecordIterator.next(SAMTextReader.java:240)
    at net.sf.samtools.SAMFileReader$AssertableIterator.next(SAMFileReader.java:612)
    at net.sf.samtools.SAMFileReader$AssertableIterator.next(SAMFileReader.java:590)
    at net.sf.picard.sam.SortSam.doWork(SortSam.java:58)
    at net.sf.picard.cmdline.CommandLineProgram.instanceMain(CommandLineProgram.java:156)
    at net.sf.picard.cmdline.CommandLineProgram.instanceMainWithExit(CommandLineProgram.java:117)
    at net.sf.picard.sam.SortSam.main(SortSam.java:66)
    Thanks

  • #2
    It looks like the error is complaining about not finding a "sequence dictionary" in your sam file. Here is something to try, not sure if it will work:

    First run CreateSequenceDictionary.jar which outputs a SAM file with just the sequence dictionary given a reference sequence.

    Next run MergeSamFiles.jar to merge the above sam file with a sequence dictionary with the original sam file which looks like it is missing a sequence dictionary.

    Now maybe SortSam.jar will work on the merged file?

    Comment


    • #3
      Thanks. However that doesn't seem to solve the problem. Anything else I can try?

      Comment


      • #4
        You probably don't have a header in your SAM file. Tell me what "samtools view -SH GSM520_ES.aligned.sam" outputs.

        Comment


        • #5
          I was probably quick to declare failure. I've just looked at the merge file output and its empty. Tried running the mergesam again and there's an error there "dictionaries are not of the same size (0, 34)". Am still scratching my head to see where this is from and how to solve it. Any ideas will be appreciated.

          Comment


          • #6
            I sorted out the problem and it's now working just fine. Thanks for your help

            Comment


            • #7
              Originally posted by muzz56 View Post
              I sorted out the problem and it's now working just fine. Thanks for your help
              Would you care to share your solution so that people searching for this problem have a possible answer.

              Comment


              • #8
                Can Someone Verify This Solution?

                1. Create the dictionary, say, dict.sam
                java -jar CreateSequenceDictionary.jar OUTPUT=dict.sam R=ref.fa

                2. Create a new file (unsorted_file.sam) that has both the dictionary and the aligned reads.
                cat dictionary.sam > unsorted_file.sam && cat file.sam >> unsorted_file.sam

                3. Sort the SAM file
                java -jar SortSam.jar INPUT=unsorted_file.sam OUTPUT=sorted_file.sam SO=coordinate

                That's what has worked for me.

                P.K.

                Comment


                • #9
                  This worked for me as described above verbatim.

                  It did not work for me when I tried this:
                  java -jar CreateSequenceDictionary.jar OUTPUT=dict.sam R=references_directory/ref.fas

                  I copied my reference file to the same directory and changed the ending to .fa. I'm not sure which (or both changes) were important. Thanks for the help!

                  Comment


                  • #10
                    change .fas to .fa

                    I think it is a matter of simply changing the .fas to .fa . I tried it a while ago, and .fas gives an error but .fa created the dict file smoothly.

                    Comment

                    Latest Articles

                    Collapse

                    • seqadmin
                      Essential Discoveries and Tools in Epitranscriptomics
                      by seqadmin


                      The field of epigenetics has traditionally concentrated more on DNA and how changes like methylation and phosphorylation of histones impact gene expression and regulation. However, our increased understanding of RNA modifications and their importance in cellular processes has led to a rise in epitranscriptomics research. “Epitranscriptomics brings together the concepts of epigenetics and gene expression,” explained Adrien Leger, PhD, Principal Research Scientist on Modified Bases...
                      Yesterday, 07:01 AM
                    • seqadmin
                      Current Approaches to Protein Sequencing
                      by seqadmin


                      Proteins are often described as the workhorses of the cell, and identifying their sequences is key to understanding their role in biological processes and disease. Currently, the most common technique used to determine protein sequences is mass spectrometry. While still a valuable tool, mass spectrometry faces several limitations and requires a highly experienced scientist familiar with the equipment to operate it. Additionally, other proteomic methods, like affinity assays, are constrained...
                      04-04-2024, 04:25 PM

                    ad_right_rmr

                    Collapse

                    News

                    Collapse

                    Topics Statistics Last Post
                    Started by seqadmin, 04-11-2024, 12:08 PM
                    0 responses
                    39 views
                    0 likes
                    Last Post seqadmin  
                    Started by seqadmin, 04-10-2024, 10:19 PM
                    0 responses
                    41 views
                    0 likes
                    Last Post seqadmin  
                    Started by seqadmin, 04-10-2024, 09:21 AM
                    0 responses
                    35 views
                    0 likes
                    Last Post seqadmin  
                    Started by seqadmin, 04-04-2024, 09:00 AM
                    0 responses
                    55 views
                    0 likes
                    Last Post seqadmin  
                    Working...
                    X