13
|
1 <tool id="gd_filter_gd_snp" name="Filter SNPs" version="1.0.0">
|
|
2 <description>: Discard some SNPs based on coverage or quality</description>
|
|
3
|
|
4 <command interpreter="python">
|
|
5 modify_snp_table.py "$input" "$p1_input" "$output" "$lo_coverage" "$hi_coverage" "$low_ind_cov" "$lo_quality"
|
|
6 #for $individual, $individual_col in zip($input.dataset.metadata.individual_names, $input.dataset.metadata.individual_columns)
|
|
7 #set $arg = '%s:%s' % ($individual_col, $individual)
|
|
8 "$arg"
|
|
9 #end for
|
|
10 </command>
|
|
11
|
|
12 <inputs>
|
|
13 <param name="input" type="data" format="gd_snp" label="SNP dataset" />
|
|
14 <param name="p1_input" type="data" format="gd_indivs" label="Population individuals" />
|
|
15 <param name="lo_coverage" type="integer" min="0" value="0" label="Lower bound on total coverage" />
|
|
16 <param name="hi_coverage" type="integer" min="0" value="1000" label="Upper bound on total coverage" />
|
|
17 <param name="low_ind_cov" type="integer" min="0" value="0" label="Lower bound on individual coverage" />
|
|
18 <param name="lo_quality" type="integer" min="0" value="0" label="Lower bound on individual quality values" />
|
|
19 </inputs>
|
|
20
|
|
21 <outputs>
|
|
22 <data name="output" format="gd_snp" metadata_source="input" />
|
|
23 </outputs>
|
|
24
|
|
25 <tests>
|
|
26 <test>
|
|
27 <param name="input" value="test_in/sample.gd_snp" ftype="gd_snp" />
|
|
28 <param name="p1_input" value="test_in/a.gd_indivs" ftype="gd_indivs" />
|
|
29 <param name="lo_coverage" value="0" />
|
|
30 <param name="hi_coverage" value="1000" />
|
|
31 <param name="low_ind_cov" value="3" />
|
|
32 <param name="lo_quality" value="30" />
|
|
33 <output name="output" file="test_out/modify_snp_table/modify.gd_snp" />
|
|
34 </test>
|
|
35 </tests>
|
|
36
|
|
37 <help>
|
|
38
|
|
39 **Dataset formats**
|
|
40
|
|
41 The input datasets are in gd_snp_ and gd_indivs_ formats.
|
|
42 The output dataset is in gd_snp_ format. (`Dataset missing?`_)
|
|
43
|
|
44 .. _gd_snp: ./static/formatHelp.html#gd_snp
|
|
45 .. _gd_indivs: ./static/formatHelp.html#gd_indivs
|
|
46 .. _Dataset missing?: ./static/formatHelp.html
|
|
47
|
|
48 -----
|
|
49
|
|
50 **What it does**
|
|
51
|
|
52 The user specifies that some of the individuals in a gd_snp dataset form a
|
|
53 "population", by supplying a list that has been previously created using the
|
|
54 Specify Individuals tool. SNPs are then discarded if their total coverage
|
|
55 for the population is too low or too high, or if their coverage or quality
|
|
56 score for any individual in the population is too low.
|
|
57
|
|
58 -----
|
|
59
|
|
60 **Example**
|
|
61
|
|
62 - input gd_snp::
|
|
63
|
|
64 Contig161_chr1_4641264_4641879 115 C T 73.5 chr1 4641382 C 6 0 2 45 8 0 2 51 15 0 2 72 5 0 2 42 6 0 2 45 10 0 2 57 Y 54 0.323 0
|
|
65 Contig48_chr1_10150253_10151311 11 A G 94.3 chr1 10150264 A 1 0 2 30 1 0 2 30 1 0 2 30 3 0 2 36 1 0 2 30 1 0 2 30 Y 22 +99. 0
|
|
66 Contig20_chr1_21313469_21313570 66 C T 54.0 chr1 21313534 C 4 0 2 39 4 0 2 39 5 0 2 42 4 0 2 39 4 0 2 39 5 0 2 42 N 1 +99. 0
|
|
67 etc.
|
|
68
|
|
69 - input individuals::
|
|
70
|
|
71 9 PB1
|
|
72 13 PB2
|
|
73 17 PB3
|
|
74
|
|
75 - output when the lower bound on individual coverage is "3"::
|
|
76
|
|
77 Contig161_chr1_4641264_4641879 115 C T 73.5 chr1 4641382 C 6 0 2 45 8 0 2 51 15 0 2 72 5 0 2 42 6 0 2 45 10 0 2 57 Y 54 0.323 0
|
|
78 Contig20_chr1_21313469_21313570 66 C T 54.0 chr1 21313534 C 4 0 2 39 4 0 2 39 5 0 2 42 4 0 2 39 4 0 2 39 5 0 2 42 N 1 +99. 0
|
|
79 etc.
|
|
80
|
|
81 </help>
|
|
82 </tool>
|