text: user146: I have around ~3,000 short sequences of approximately ~10Kb long. What are the best ways to find the motifs among all of these sequences? Is there a certain software/method recommended?
  There are several ways to do this. My goal would be to:
  (1) Check for motifs repeated within individual sequences
  (2) Check for motifs shared among all sequences
  (3) Check for the presence of "expected" or known motifs
  With respect to #3, I'm also curious if I find e.g. trinucleotide sequences, how does one check the context around these regions?
  Thank you for the recommendations/help!
  
  user73: For (3), this page has a lot of links to pattern/motif finding tools. Following through the YMF link on that page, I came across the University of Washington Motif Discovery section. Of these projection seemed to be the only downloadable tool. I find it interesting how old all these tools are; maybe the introduction of microarrays and NGS has made them all redundant.
  Your sub-problem (2) seems similar to the problem I'm having with Nippostrongylus brasiliensis genome sequences, where I'd like to find regions of very high homology (length 500bp to 20kb or more, 95-99% similar) that are repeated throughout the genome. These sequences are killing the assembly.
  The main way I can find these regions is by looking at a coverage plot of long nanopore reads mapped to the assembled genome (using GraphMap or BWA). Any regions with substantially higher than median coverage are likely to be shared repeats.
  I've played around in the past with chopping up the reads to smaller sizes, which works better for hitting smaller repeated regions that are such a small proportion of most reads that they are never mapped to all the repeated locations. I wrote my own script a while back to chop up reads (for a different purpose), which produces a FASTA/FASTQ file where all reads are exactly the same length. For some unknown reason I took the time to document that script "properly" using POD, so here's a short summary:
  
  Converts all sequences in the input FASTA file to the same length.
       Sequences shorter than the target length are dropped, and sequences longer
       than the target length are split into overlapping subsequences covering
       the entire range. This prepares the sequences for use in an
       overlap-consensus assembler requiring constant-length sequences (such as
       edena).
  
  And here's the syntax:
  $ ./normalise_seqlengths.pl -h
  Usage:
      ./normalise_seqlengths.pl <reads.fa> [options]
  
    Options:
      -help
        Only display this help message
  
      -fraglength
        Target fragment length (in base-pairs, default 2000)
  
      -overlap
        Minimum overlap length (in base-pairs, default 200)
  
      -short
        Keep short sequences (shorter than fraglength)
  
  
  user599: Most tools I know of looks for enrichment of specific motifs - but that requires that you have a set of sequences which are of special interest and a background set to test against.
  Is that your case?
  Update after comments 12th June 2017.
  You could try the meme suite more specifically the motif finder 
  
  user787: it is under development, but maybe BaMMmotif! is something for you? Its main selling point is that it can look for motifs enriched in a set of sequences of equal length de novo. If you can't/don't want to supply a negative set it learns one from the positive sequences. There is a wealth of options to choose from if you have more information about your sequences: there are different models for "zero or one", "one" and "multiple" occurrences of the motif.
  You can also use it to look for known motifs, if you encode them as an XXmotif PWM. If you have a file with motifs (like binding sites) you can use that as initialization as well.
  While I have not used the software myself, the authors are very responsive on git and the installation instructions seem pretty straightforward.
  EDIT: Apparently the software was developed with ChIP experiments as the usual use case scenario, it might misbehave for larger sequences or take super long to run.
  
  user33: Check out HOMER. "Software for motif discovery and next generation sequencing analysis", it's what my lab uses currently for finding eRNA motifs.
  Edit: For @ShanZhengYang "HOMER was designed as a de novo motif discovery algorithm..." 
  HOMER De Novo Motif
  
  user313: The MEME Suite web site contains a collection of tools for motif analysis (I'm one of the maintainers). It contains two de novo motif discovery tools: MEME and DREME. Public web applications are provided, but you can also download and build command line tools for a local installation.
  For your first goal you could use MEME and select the "Any number of repetitions model" (ANR). For your second goal, you'd use MEME with the "Zero or One Occurrences Per Sequence" (ZOOPS) model. For your third goal you could use FIMO (Find Individual Motif Occurrences), and one or more of the motif databases provided on the software and database download page.
  It sounds like your sequence data is about 30Mb. The MEME web application is limited to 60kb of sequence data, so you'd have to install a local copy of the MEME Suite. MEME would take a long time to analyze a 30Mb sequence database unless you have MPI configured, and lots of cores available. You might want to consider analyzing a randomly selected subset of your sequences. The running time of MEME grows as the cube of the number of sequences. 
  For short motifs, you may want to use DREME rather than MEME. DREME is better than MEME at identifying short motifs, but is limited to motifs <= 8 positions wide.
  
original_text: 146: <p>I have around ~3,000 short sequences of approximately ~10Kb long. What are the best ways to find the motifs among all of these sequences? Is there a certain software/method recommended?</p>
  
  <p>There are several ways to do this. My goal would be to:</p>
  
  <p>(1) Check for motifs repeated within individual sequences</p>
  
  <p>(2) Check for motifs shared among all sequences</p>
  
  <p>(3) Check for the presence of "expected" or known motifs</p>
  
  <p>With respect to #3, I'm also curious if I find e.g. trinucleotide sequences, how does one check the context around these regions?</p>
  
  <p>Thank you for the recommendations/help!</p>
   73: <p>For (3), <a href="http://www.geneinfinity.org/sp/sp_motif.html" rel="nofollow noreferrer">this page</a> has a lot of links to pattern/motif finding tools. Following through the <a href="http://bio.cs.washington.edu/YMF/YMFWeb/YMFInput.pl" rel="nofollow noreferrer">YMF</a> link on that page, I came across the University of Washington <a href="http://bio.cs.washington.edu/software/motif_discovery#Motif%20Discovery" rel="nofollow noreferrer">Motif Discovery</a> section. Of these <a href="http://www1.cse.wustl.edu/~jbuhler/pgt/" rel="nofollow noreferrer">projection</a> seemed to be the only downloadable tool. I find it interesting how old all these tools are; maybe the introduction of microarrays and NGS has made them all redundant.</p>
  
  <p>Your sub-problem (2) seems similar to the problem I'm having with <em>Nippostrongylus brasiliensis</em> genome sequences, where I'd like to find regions of very high homology (length 500bp to 20kb or more, 95-99% similar) that are repeated throughout the genome. These sequences are killing the assembly.</p>
  
  <p>The main way I can find these regions is by looking at a coverage plot of long nanopore reads mapped to the assembled genome (using GraphMap or BWA). Any regions with substantially higher than median coverage are likely to be shared repeats.</p>
  
  <p>I've played around in the past with chopping up the reads to smaller sizes, which works better for hitting smaller repeated regions that are such a small proportion of most reads that they are never mapped to all the repeated locations. I wrote <a href="https://github.com/gringer/bioinfscripts/blob/master/normalise_seqlengths.pl" rel="nofollow noreferrer">my own script</a> a while back to chop up reads (for a different purpose), which produces a FASTA/FASTQ file where all reads are exactly the same length. For some unknown reason I took the time to document that script "properly" using POD, so here's a short summary:</p>
  
  <blockquote>
    <p>Converts all sequences in the input FASTA file to the same length.
       Sequences shorter than the target length are dropped, and sequences longer
       than the target length are split into overlapping subsequences covering
       the entire range. This prepares the sequences for use in an
       overlap-consensus assembler requiring constant-length sequences (such as
       edena).</p>
  </blockquote>
  
  <p>And here's the syntax:</p>
  
  <pre><code>$ ./normalise_seqlengths.pl -h
  Usage:
      ./normalise_seqlengths.pl &lt;reads.fa&gt; [options]
  
    Options:
      -help
        Only display this help message
  
      -fraglength
        Target fragment length (in base-pairs, default 2000)
  
      -overlap
        Minimum overlap length (in base-pairs, default 200)
  
      -short
        Keep short sequences (shorter than fraglength)
  </code></pre>
   599: <p>Most tools I know of looks for enrichment of specific motifs - but that requires that you have a set of sequences which are of special interest and a background set to test against.</p>
  
  <p>Is that your case?</p>
  
  <p>Update after comments 12th June 2017.</p>
  
  <p>You could try the <a href="http://meme-suite.org/" rel="nofollow noreferrer">meme suite</a> more specifically <a href="http://meme-suite.org/tools/meme" rel="nofollow noreferrer">the motif finder</a> </p>
   787: <p>it is under development, but maybe <a href="https://github.com/soedinglab/BaMMmotif" rel="nofollow noreferrer">BaMMmotif!</a> is something for you? Its main selling point is that it can look for motifs enriched in a set of sequences of equal length <em>de novo</em>. If you can't/don't want to supply a negative set it learns one from the positive sequences. There is a wealth of options to choose from if you have more information about your sequences: there are different models for "zero or one", "one" and "multiple" occurrences of the motif.</p>
  
  <p>You can also use it to look for known motifs, if you encode them as an XXmotif PWM. If you have a file with motifs (like binding sites) you can use that as initialization as well.</p>
  
  <p>While I have not used the software myself, the authors are very responsive on git and the installation instructions seem pretty straightforward.</p>
  
  <p>EDIT: Apparently the software was developed with ChIP experiments as the usual use case scenario, it might misbehave for larger sequences or take super long to run.</p>
   33: <p>Check out <a href="http://homer.ucsd.edu/homer/" rel="nofollow noreferrer">HOMER</a>. "Software for motif discovery and next generation sequencing analysis", it's what my lab uses currently for finding eRNA motifs.</p>
  
  <p>Edit: For @ShanZhengYang "HOMER was designed as a de novo motif discovery algorithm..." 
  <a href="http://homer.ucsd.edu/homer/introduction/basics.html" rel="nofollow noreferrer">HOMER De Novo Motif</a></p>
   313: <p>The <a href="http://meme-suite.org" rel="nofollow noreferrer">MEME Suite</a> web site contains a collection of tools for motif analysis (I'm one of the maintainers). It contains two de novo motif discovery tools: <a href="http://meme-suite.org/tools/meme" rel="nofollow noreferrer">MEME</a> and <a href="http://meme-suite.org/tools/dreme" rel="nofollow noreferrer">DREME</a>. Public web applications are provided, but you can also download and build command line tools for a local installation.</p>
  
  <p>For your first goal you could use <a href="http://meme-suite.org/tools/meme" rel="nofollow noreferrer">MEME</a> and select the "Any number of repetitions model" (ANR). For your second goal, you'd use MEME with the "Zero or One Occurrences Per Sequence" (ZOOPS) model. For your third goal you could use FIMO (Find Individual Motif Occurrences), and one or more of the motif databases provided on the <a href="http://meme-suite.org/doc/download.html?man_type=web" rel="nofollow noreferrer">software and database download page</a>.</p>
  
  <p>It sounds like your sequence data is about 30Mb. The MEME web application is limited to 60kb of sequence data, so you'd have to install a local copy of the MEME Suite. MEME would take a long time to analyze a 30Mb sequence database unless you have MPI configured, and lots of cores available. You might want to consider analyzing a randomly selected subset of your sequences. The running time of MEME grows as the cube of the number of sequences. </p>
  
  <p>For short motifs, you may want to use <a href="http://meme-suite.org/tools/dreme" rel="nofollow noreferrer">DREME</a> rather than MEME. DREME is better than MEME at identifying short motifs, but is limited to motifs &lt;= 8 positions wide.</p>
  