newcpgreport |
newcpgreport identifies CpG islands in one or more nucleotide sequences. The ratio of observered to expected number of GC dinucleotides patterns is calculated over a window (sequence region) which is moved along the sequence. The calculated ratios are used to identify regions which match the program's definition of a "CpG island" (a CG dinucleotide rich area). A report file is written giving the input sequence name, CpG island parameters and data on any CpG islands that are found.
The ratio of observered to expected number of GC dinucleotides patterns is calculated over a window of user-specified size (-window parameter). The window is slid along the sequence and the ratio recalculated until the end of the sequence is reached.
By default, cpgplot defines a CpG island as a region where, over an average of 10 windows and not less than 200 bases, the calculated (%G + %C) content is over 50% and the calculated Observed/Expected ratio is over 0.6. These conditions can be modified by setting the values of the appropriate parameters.
The Observed number of CpG patterns in a window is simply the number of times a C is found followed immediately by a G.
The Expected number of CpG patterns is calculated for each window as the number of CpG dinucleotides you would expect to see in that window based on the frequency of C's and G's in that window. Thus, the Expected frequency of CpG's in a window is calculated as the number of Cs in the window multiplied by the number of Gs in the window, divided by the window length. Expected = (number of C's * number of G's) / window length
% newcpgreport Identify CpG islands in nucleotide sequence(s) Input nucleotide sequence(s): tembl:u68037 Window size [100]: Shift increment [1]: Minimum Length [200]: Minimum observed/expected [0.6]: Minimum percentage [50.]: Output file [u68037.newcpgreport]: |
Go to the input files for this example
Go to the output files for this example
Standard (Mandatory) qualifiers: [-sequence] seqall Nucleotide sequence(s) filename and optional format, or reference (input USA) -window integer [100] Window size (Integer 1 or more) -shift integer [1] Shift increment (Integer 1 or more) -minlen integer [200] Minimum Length (Integer 1 or more) -minoe float [0.6] Minimum observed/expected (Number from 0.000 to 10.000) -minpc float [50.] Minimum percentage (Number from 0.000 to 100.000) [-outfile] outfile [*.newcpgreport] Output file name Additional (Optional) qualifiers: (none) Advanced (Unprompted) qualifiers: (none) 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 -sformat1 string Input sequence format -sdbname1 string Database name -sid1 string Entryname -ufo1 string UFO features -fformat1 string Features format -fopenfile1 string Features file name "-outfile" associated qualifiers -odirectory2 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. 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 |
Standard (Mandatory) qualifiers | Allowed values | Default | |
---|---|---|---|
[-sequence] (Parameter 1) |
Nucleotide sequence(s) filename and optional format, or reference (input USA) | Readable sequence(s) | Required |
-window | Window size | Integer 1 or more | 100 |
-shift | Shift increment | Integer 1 or more | 1 |
-minlen | Minimum Length | Integer 1 or more | 200 |
-minoe | Minimum observed/expected | Number from 0.000 to 10.000 | 0.6 |
-minpc | Minimum percentage | Number from 0.000 to 100.000 | 50. |
[-outfile] (Parameter 2) |
Output file name | Output file | <*>.newcpgreport |
Additional (Optional) qualifiers | Allowed values | Default | |
(none) | |||
Advanced (Unprompted) qualifiers | Allowed values | Default | |
(none) |
ID U68037; SV 1; linear; mRNA; STD; ROD; 1218 BP. XX AC U68037; XX DT 23-SEP-1996 (Rel. 49, Created) DT 04-MAR-2000 (Rel. 63, Last updated, Version 2) XX DE Rattus norvegicus EP1 prostanoid receptor mRNA, complete cds. XX KW . XX OS Rattus norvegicus (Norway rat) OC Eukaryota; Metazoa; Chordata; Craniata; Vertebrata; Euteleostomi; Mammalia; OC Eutheria; Euarchontoglires; Glires; Rodentia; Sciurognathi; Muroidea; OC Muridae; Murinae; Rattus. XX RN [1] RP 1-1218 RA Abramovitz M., Boie Y.; RT "Cloning of the rat EP1 prostanoid receptor"; RL Unpublished. XX RN [2] RP 1-1218 RA Abramovitz M., Boie Y.; RT ; RL Submitted (26-AUG-1996) to the EMBL/GenBank/DDBJ databases. RL Biochemistry & Molecular Biology, Merck Frosst Center for Therapeutic RL Research, P. O. Box 1005, Pointe Claire - Dorval, Quebec H9R 4P8, Canada XX FH Key Location/Qualifiers FH FT source 1..1218 FT /organism="Rattus norvegicus" FT /strain="Sprague-Dawley" FT /mol_type="mRNA" FT /db_xref="taxon:10116" FT CDS 1..1218 FT /codon_start=1 FT /product="EP1 prostanoid receptor" FT /note="family 1 G-protein coupled receptor" FT /db_xref="GOA:P70597" FT /db_xref="InterPro:IPR000276" FT /db_xref="InterPro:IPR000708" FT /db_xref="InterPro:IPR001244" FT /db_xref="InterPro:IPR008365" FT /db_xref="UniProtKB/Swiss-Prot:P70597" FT /protein_id="AAB07735.1" FT /translation="MSPYGLNLSLVDEATTCVTPRVPNTSVVLPTGGNGTSPALPIFSM FT TLGAVSNVLALALLAQVAGRLRRRRSTATFLLFVASLLAIDLAGHVIPGALVLRLYTAG FT RAPAGGACHFLGGCMVFFGLCPLLLGCGMAVERCVGVTQPLIHAARVSVARARLALALL FT AAMALAVALLPLVHVGHYELQYPGTWCFISLGPPGGWRQALLAGLFAGLGLAALLAALV FT CNTLSGLALLRARWRRRRSRRFRENAGPDDRRRWGSRGLRLASASSASSITSTTAALRS FT SRGGGSARRVHAHDVEMVGQLVGIMVVSCICWSPLLVLVVLAIGGWNSNSLQRPLFLAV FT RLASWNQILDPWVYILLRQAMLRQLLRLLPLRVSAKGGPTELSLTKSAWEASSLRSSRH FT SGFSHL" XX SQ Sequence 1218 BP; 162 A; 397 C; 387 G; 272 T; 0 other; atgagcccct acgggcttaa cctgagccta gtggatgagg caacaacgtg tgtaacaccc 60 agggtcccca atacatctgt ggtgctgcca acaggcggta acggcacatc accagcgctg 120 cctatcttct ccatgacgct gggtgctgtg tccaacgtgc tggcgctggc gctgctggcc 180 caggttgcag gcagactgcg gcgccgccgc tcgactgcca ccttcctgtt gttcgtcgcc 240 agcctgcttg ccatcgacct agcaggccat gtgatcccgg gcgccttggt gcttcgcctg 300 tatactgcag gacgtgcgcc cgctggcggg gcctgtcatt tcctgggcgg ctgtatggtc 360 ttctttggcc tgtgcccact tttgcttggc tgtggcatgg ccgtggagcg ctgcgtgggt 420 gtcacgcagc cgctgatcca cgcggcgcgc gtgtccgtag cccgcgcacg cctggcacta 480 gccctgctgg ccgccatggc tttggcagtg gcgctgctgc cactagtgca cgtgggtcac 540 tacgagctac agtaccctgg cacttggtgt ttcattagcc ttgggcctcc tggaggttgg 600 cgccaggcgt tgcttgcggg cctcttcgcc ggccttggcc tggctgcgct ccttgccgca 660 ctagtgtgta atacgctcag cggcctggcg ctccttcgtg cccgctggag gcggcgtcgc 720 tctcgacgtt tccgagagaa cgcaggtccc gatgatcgcc ggcgctgggg gtcccgtgga 780 ctccgcttgg cctccgcctc gtctgcgtca tccatcactt caaccacagc tgccctccgc 840 agctctcggg gaggcggctc cgcgcgcagg gttcacgcac acgacgtgga aatggtgggc 900 cagctcgtgg gcatcatggt ggtgtcgtgc atctgctgga gccccctgct ggtattggtg 960 gtgttggcca tcgggggctg gaactctaac tccctgcagc ggccgctctt tctggctgta 1020 cgcctcgcgt cgtggaacca gatcctggac ccatgggtgt acatcctgct gcgccaggct 1080 atgctgcgcc aacttcttcg cctcctaccc ctgagggtta gtgccaaggg tggtccaacg 1140 gagctgagcc taaccaagag tgcctgggag gccagttcac tgcgtagctc ccggcacagt 1200 ggcttcagcc acttgtga 1218 // |
ID U68037 1218 BP. XX DE CpG Island report. XX CC Obs/Exp ratio > 0.60. CC % C + % G > 50.00. CC Length > 200. XX FH Key Location/Qualifiers FT CpG island 104..509 FT /size=406 FT /Sum C+G=269 FT /Percent CG=66.26 FT /ObsExp=0.81 FT CpG island 596..924 FT /size=329 FT /Sum C+G=223 FT /Percent CG=67.78 FT /ObsExp=1.01 FT numislands 2 // |
"CpG" refers to a C nucleotide immediately followed by a G. The 'p' in 'CpG' refers to the phosphate group linking the two bases. Regions of genomic sequences rich in the CpG pattern or "CpG islands" are resistant to methylation and tend to be associated with genes which are frequently switched on. It's been estimated that about half of all mammalian genes, and, possibly all mammalian house-keeping genes, have a CpG-rich region around their 5' end. Non-mammalian vertebrates have some CpG islands that are associated with genes, but the association gets equivocal in the farther taxonomic groups. The detection of CpG island upstream of predicted exons or genes is evidence in support of a highly expressed gene.
newcpgreport is used in the production of the CpG Island database 'CPGISLE'. It produces a report for potential CpG islands in CPGISLE database entry format. See the FTP site: ftp://ftp.ebi.ac.uk/pub/databases/cpgisle/ for the finished database.
As there is no official definition of what is a CpG island is or how to identify where they begin and end, we work with two definitions and thus two methods. These are:
1. cpgplot and newcpgreport use a sliding window within which the Observed/Expected ratio of CpG is calculated. For a sequence region to reported as a CpG island, it must satisfy the following contraints:
Observed/Expected ratio > 0.6 % C + % G > 50% Sequence Length > 200
2. newcpgseek and cpgreport use a running sum calculated from all positions in a sequence rather than a window to produce a score. If there is not a CG dinucleotide at a position, the score is decremented, if there is one, the score is incremented by a constant (user-defined) value. If the score for a region in the sequence is higher than a threshold (17 at the moment) then a putative island is declared. Sequence regions scoring above the threshold are searched for recursively.
This method overpredicts islands but finds the smaller ones around primary exons. newcpgseek uses the same method as cpgreport but the output is different and more readable. For most purposes you should probably use newcpgreport rather than cpgreport. It is used to produce the human cpgisland database you can find on the EBI's ftp server as well as on the EBI's SRS server.
newcpgseek and cpgreport both now display the actual CpG count, the (%C + %G) and the Observed/Expected ratio in the region where the score is above the threshold.
The geecee program measures CG content in the entire input sequence and is not to be used to detect CpG islands. It can be useful for detecting sequences that MIGHT contain an island.
Program name | Description |
---|---|
cpgplot | Identify and plot CpG islands in nucleotide sequence(s) |
cpgreport | Identify and report CpG-rich regions in nucleotide sequence(s) |
geecee | Calculate fractional GC content of nucleic acid sequences |
newcpgseek | Identify and report CpG-rich regions in nucleotide sequence(s) |
As there is no official definition of what is a cpg island is, and worst where they begin and end, we have to live with 2 definitions and thus two methods. These are:
1. newcpgseek and cpgreport - both declare a putative island if the score is higher than a threshold (17 at the moment). They now also display the actual CpG count, the % CG and the observed/expected ration in the region where the score is above the threshold. This scoring method based on sum/frequencies overpredicts islands but finds the smaller ones around primary exons. newcpgseek uses the same method as cpgreport but the output is different and more readable.
2. newcpgreport and cpgplot use the method which mentioned in the Description section above. The important thing to note in this method is that an island, in order to be reported, is defined as a region that satisfies the following contraints:
Obs/Exp ratio > 0.6 % C + % G > 50% Length > 200.
For all practical purposes you should probably use newcpgreport. It is actually used to produce the human cpgisland database you can find on the EBI's ftp server as well as on the EBI's SRS server.
geecee measures CG content in the entire input sequence and is not to be used to detect CpG islands. It can be useful for detecting sequences that MIGHT contain an island.