[2] | 1 | <tool id="featureCoverage1" name="Feature coverage" version="2.0.0"> |
---|
| 2 | <description></description> |
---|
| 3 | <command interpreter="python">featureCounter.py $input1 $input2 $output -1 ${input1.metadata.chromCol},${input1.metadata.startCol},${input1.metadata.endCol},${input1.metadata.strandCol} -2 ${input2.metadata.chromCol},${input2.metadata.startCol},${input2.metadata.endCol},${input2.metadata.strandCol}</command> |
---|
| 4 | <inputs> |
---|
| 5 | <param format="interval" name="input1" type="data" help="First query"> |
---|
| 6 | <label>What portion of</label> |
---|
| 7 | </param> |
---|
| 8 | <param format="interval" name="input2" type="data" help="Second query"> |
---|
| 9 | <label>is covered by</label> |
---|
| 10 | </param> |
---|
| 11 | </inputs> |
---|
| 12 | <outputs> |
---|
| 13 | <data format="interval" name="output" metadata_source="input1" /> |
---|
| 14 | </outputs> |
---|
| 15 | |
---|
| 16 | <tests> |
---|
| 17 | <test> |
---|
| 18 | <param name="input1" value="1.bed" /> |
---|
| 19 | <param name="input2" value="2.bed" /> |
---|
| 20 | <output name="output" file="6_feature_coverage.bed" /> |
---|
| 21 | </test> |
---|
| 22 | <test> |
---|
| 23 | <param name="input1" value="chrY1.bed" /> |
---|
| 24 | <param name="input2" value="chrY2.bed" /> |
---|
| 25 | <output name="output" file="chrY_Coverage.bed" /> |
---|
| 26 | </test> |
---|
| 27 | </tests> |
---|
| 28 | <help> |
---|
| 29 | |
---|
| 30 | .. class:: infomark |
---|
| 31 | |
---|
| 32 | **What it does** |
---|
| 33 | |
---|
| 34 | This tool finds the coverage of intervals in the first query on intervals in the second query. The coverage and count are appended as 4 new columns in the resulting dataset. |
---|
| 35 | |
---|
| 36 | ----- |
---|
| 37 | |
---|
| 38 | **Example** |
---|
| 39 | |
---|
| 40 | - If **First query** consists of the following windows:: |
---|
| 41 | |
---|
| 42 | chrX 1 10001 seg 0 - |
---|
| 43 | chrX 10001 20001 seg 0 - |
---|
| 44 | chrX 20001 30001 seg 0 - |
---|
| 45 | chrX 30001 40001 seg 0 - |
---|
| 46 | |
---|
| 47 | - and **Second query** consists of the following exons:: |
---|
| 48 | |
---|
| 49 | chrX 5000 6000 seg2 0 - |
---|
| 50 | chrX 5500 7000 seg2 0 - |
---|
| 51 | chrX 9000 22000 seg2 0 - |
---|
| 52 | chrX 24000 34000 seg2 0 - |
---|
| 53 | chrX 36000 38000 seg2 0 - |
---|
| 54 | |
---|
| 55 | - the **Result** is the coverage of exons of the second query in each of the windows contained in first query:: |
---|
| 56 | |
---|
| 57 | chrX 1 10001 seg 0 - 3001 0.3001 2 1 |
---|
| 58 | chrX 10001 20001 seg 0 - 10000 1.0 1 0 |
---|
| 59 | chrX 20001 30001 seg 0 - 8000 0.8 0 2 |
---|
| 60 | chrX 30001 40001 seg 0 - 5999 0.5999 1 1 |
---|
| 61 | |
---|
| 62 | - To clarify, the following line of output ( added columns are indexed by a, b and c ):: |
---|
| 63 | |
---|
| 64 | a b c d |
---|
| 65 | chrX 1 10001 seg 0 - 3001 0.3001 2 1 |
---|
| 66 | |
---|
| 67 | implies that 2 exons (c) fall fully in this window (chrX:1-10001), 1 exon (d) partially overlaps this window, and these 3 exons cover 30.01% (c) of the window size, spanning 3001 nucleotides (a). |
---|
| 68 | |
---|
| 69 | * a: number of nucleotides in this window covered by the features in (c) and (d) - features overlapping with each other will be merged to calculate (a) |
---|
| 70 | * b: fraction of window size covered by features in (c) and (d) - features overlapping with each other will be merged to calculate (b) |
---|
| 71 | * c: number of features in the 2nd query that fall **completely** within this window |
---|
| 72 | * d: number of features in the 2nd query that **partially** overlap this window |
---|
| 73 | |
---|
| 74 | </help> |
---|
| 75 | </tool> |
---|