Please help by correcting and extending the Wiki pages.
oddcomp reads one or more protein sequences, identifies proteins containing regions with a specific sequence word composition, then writes a list of sequence identifiers of those proteins to an output file. The word composition is read from an input file which gives the minimum word occurence for any number of sequence words. For an input sequence to be listed in the output file, each word must be found at least the stated number of times in any window over the input sequence. The window size may be set to any value or the length of the current protein (-fullwindow option).
The input file of sequence word composition data is in the same format as the output from compseq. Only one word size (of any length) can be used and is specified at the top of the file. The search for words is a boolean AND meaning all words given in the file must be found in a sequence for it to be reported.
Each word must occur at least the stated number of times in a window over an input sequence for the sequence to be reported. The word size given in the input data file must be less than the specified window size; you will not get any hits otherwise.
To search for entries in swissprot with at least 1 SR AND at least 2 RS:
% oddcomp Identify proteins with specified sequence word composition Input protein sequence(s): tsw:* Program compseq output file: oddcomp.comp Window size to consider (e.g. 30 aa) : Output file [cru4_arath.oddcomp]: out.odd
Go to the input files for this example
Go to the output files for this example
Identify proteins with specified sequence word composition Version: EMBOSS:22.214.171.124 Standard (Mandatory) qualifiers (* if not always prompted): [-sequence] seqall Protein sequence(s) filename and optional format, or reference (input USA) [-infile] infile This is a file in the format of the output produced by 'compseq' that is used to set the minimum frequencies of words in this analysis. * -window integer  This is the size of window in which to count. Thus if you want to count frequencies in a 40 aa stretch you should enter 40 here. (Integer 10 or more) [-outfile] outfile [*.oddcomp] This is the results file. Additional (Optional) qualifiers: (none) Advanced (Unprompted) qualifiers: -fullwindow toggle [N] Set this option on (Y) if you want the window size to be set to the length of the current protein. Otherwise, leave this option unset, in which case you'll be prompted for a window size to use. -[no]ignorebz boolean [Y] The amino acid code B represents Asparagine or Aspartic acid and the code Z represents Glutamine or Glutamic acid. These are not commonly used codes and you may wish not to count words containing them, just noting them in the count of 'Other' words. Associated qualifiers: "-sequence" associated qualifiers -sbegin1 integer Start of each sequence to be used -send1 integer End of each sequence to be used -sreverse1 boolean Reverse (if DNA) -sask1 boolean Ask for begin/end/reverse -snucleotide1 boolean Sequence is nucleotide -sprotein1 boolean Sequence is protein -slower1 boolean Make lower case -supper1 boolean Make upper case -scircular1 boolean Sequence is circular -squick1 boolean Read id and sequence only -sformat1 string Input sequence format -iquery1 string Input query fields or ID list -ioffset1 integer Input start position offset -sdbname1 string Database name -sid1 string Entryname -ufo1 string UFO features -fformat1 string Features format -fopenfile1 string Features file name "-outfile" associated qualifiers -odirectory3 string Output directory General qualifiers: -auto boolean Turn off prompts -stdout boolean Write first file to standard output -filter boolean Read first file from standard input, write first file to standard output -options boolean Prompt for standard and additional values -debug boolean Write debug output to program.dbg -verbose boolean Report some/full command line options -help boolean Report command line options and exit. More information on associated and general qualifiers can be found with -help -verbose -warning boolean Report warnings -error boolean Report errors -fatal boolean Report fatal errors -die boolean Report dying program messages -version boolean Report version number and exit
|Standard (Mandatory) qualifiers|
|seqall||Protein sequence(s) filename and optional format, or reference (input USA)||Readable sequence(s)||Required|
|infile||This is a file in the format of the output produced by 'compseq' that is used to set the minimum frequencies of words in this analysis.||Input file||Required|
|-window||integer||This is the size of window in which to count. Thus if you want to count frequencies in a 40 aa stretch you should enter 40 here.||Integer 10 or more||30|
|outfile||This is the results file.||Output file||<*>.oddcomp|
|Additional (Optional) qualifiers|
|Advanced (Unprompted) qualifiers|
|-fullwindow||toggle||Set this option on (Y) if you want the window size to be set to the length of the current protein. Otherwise, leave this option unset, in which case you'll be prompted for a window size to use.||Toggle value Yes/No||No|
|-[no]ignorebz||boolean||The amino acid code B represents Asparagine or Aspartic acid and the code Z represents Glutamine or Glutamic acid. These are not commonly used codes and you may wish not to count words containing them, just noting them in the count of 'Other' words.||Boolean value Yes/No||Yes|
|"-sequence" associated seqall qualifiers|
|integer||Start of each sequence to be used||Any integer value||0|
|integer||End of each sequence to be used||Any integer value||0|
|boolean||Reverse (if DNA)||Boolean value Yes/No||N|
|boolean||Ask for begin/end/reverse||Boolean value Yes/No||N|
|boolean||Sequence is nucleotide||Boolean value Yes/No||N|
|boolean||Sequence is protein||Boolean value Yes/No||N|
|boolean||Make lower case||Boolean value Yes/No||N|
|boolean||Make upper case||Boolean value Yes/No||N|
|boolean||Sequence is circular||Boolean value Yes/No||N|
|boolean||Read id and sequence only||Boolean value Yes/No||N|
|string||Input sequence format||Any string|
|string||Input query fields or ID list||Any string|
|integer||Input start position offset||Any integer value||0|
|string||Database name||Any string|
|string||UFO features||Any string|
|string||Features format||Any string|
|string||Features file name||Any string|
|"-outfile" associated outfile qualifiers|
|string||Output directory||Any string|
|-auto||boolean||Turn off prompts||Boolean value Yes/No||N|
|-stdout||boolean||Write first file to standard output||Boolean value Yes/No||N|
|-filter||boolean||Read first file from standard input, write first file to standard output||Boolean value Yes/No||N|
|-options||boolean||Prompt for standard and additional values||Boolean value Yes/No||N|
|-debug||boolean||Write debug output to program.dbg||Boolean value Yes/No||N|
|-verbose||boolean||Report some/full command line options||Boolean value Yes/No||Y|
|-help||boolean||Report command line options and exit. More information on associated and general qualifiers can be found with -help -verbose||Boolean value Yes/No||N|
|-warning||boolean||Report warnings||Boolean value Yes/No||Y|
|-error||boolean||Report errors||Boolean value Yes/No||Y|
|-fatal||boolean||Report fatal errors||Boolean value Yes/No||Y|
|-die||boolean||Report dying program messages||Boolean value Yes/No||Y|
|-version||boolean||Report version number and exit||Boolean value Yes/No||N|
# Example input file for oddcomp Word size 2 Total count 0 # # Word Obs Count Obs Frequency Exp Frequency Obs/Exp Frequency # RS 2 0 0 0 SR 1 0 0 0 Other 0 0 0 0
The columns "Obs Frequency", "Exp Frequency" and "Obs/Exp Frequency" are not required - they were simply included in this example to show the similarity between this input file format and the output of the program compseq. A compseq output file can be used as the input to oddcomp - the extra columns are ignored by oddcomp.
A minimal composition input data file would look like this:
Word size 2 Total count 0 RS 2 SR 1
Blank lines and lines starting with '#' are ignored.
The first non-comment line should start with 'Word size' and will specify the word size to use.
A line starting with the word 'Total' is required.
Anything after the line starting with the word 'Total' will be read as word count data.
Word count data consists of a word to search for and the count of that word to search for within the sliding window. The columns are separated by one or more spaces or TAB characters. Anything after these two columns will be ignored.
# # Output from 'oddcomp' # # The Expected frequencies are taken from the file: ../../data/oddcomp.comp # # Word size: 2 CNR1B_TAKRU CO9_TAKRU FOS_TAKRU RS7_TAKRU UBR5_RAT # END #
oddcomp was originally written to identify proteins with SR/RS dimers, for example, windows of forty amino acids containing at least 3 SR and 4 RS words. More generally, it will help answer questions of the type 'which proteins contain at least x occurrences of word X and y occurences of word Y in regions of n residues'. For example, one could search for serine rich or polyglutamine rich, collagen helix, or similar proteins using this program.
oddcomp does not report the location of the word matches in the sequence, merely the sequence ID. To search for a specific set of words in a sequence, you should edit the input file of sequence word composition data.
|backtranambig||Back-translate a protein sequence to ambiguous nucleotide sequence|
|backtranseq||Back-translate a protein sequence to a nucleotide sequence|
|compseq||Calculate the composition of unique words in sequences|
|emowse||Search protein sequences by digest fragment molecular weight|
|freak||Generate residue/base frequency table or plot|
|mwcontam||Find weights common to multiple molecular weights files|
|mwfilter||Filter noisy data from molecular weights file|
|pepdigest||Report on protein proteolytic enzyme or reagent cleavage sites|
|pepinfo||Plot amino acid properties of a protein sequence in parallel|
|pepstats||Calculate statistics of protein properties|
|wordcount||Count and extract unique words in molecular sequence(s)|
Please report all bugs to the EMBOSS bug team (emboss-bug © emboss.open-bio.org) not to the original author.