0
|
1 <tool id="gd_modify_snp_table" name="Modify" version="1.0.0">
|
|
2 <description>a SNP table</description>
|
|
3
|
|
4 <command interpreter="python">
|
|
5 modify_snp_table.py "$input" "$p1_input" "$output"
|
|
6 #if $limit_coverage.choice == "0"
|
|
7 "-1" "-1" "-1" "-1"
|
|
8 #else
|
|
9 "${limit_coverage.lo_coverage}" "${limit_coverage.hi_coverage}" "${limit_coverage.low_ind_cov}" "${limit_coverage.lo_quality}"
|
|
10 #end if
|
|
11 #for $individual, $individual_col in zip($input.dataset.metadata.individual_names, $input.dataset.metadata.individual_columns)
|
|
12 #set $arg = '%s:%s' % ($individual_col, $individual)
|
|
13 "$arg"
|
|
14 #end for
|
|
15 </command>
|
|
16
|
|
17 <inputs>
|
|
18 <param name="input" type="data" format="wsf" label="SNP table" />
|
|
19 <param name="p1_input" type="data" format="ind" label="Population individuals" />
|
|
20 <conditional name="limit_coverage">
|
|
21 <param name="choice" type="select" format="integer" label="Option">
|
|
22 <option value="0" selected="true">add columns to the SNP table</option>
|
|
23 <option value="1">discard some SNPs</option>
|
|
24 </param>
|
|
25 <when value="0" />
|
|
26 <when value="1">
|
|
27 <param name="lo_coverage" type="integer" min="0" value="0" label="Lower bound on total coverage" />
|
|
28 <param name="hi_coverage" type="integer" min="0" value="1000" label="Upper bound on total coverage" />
|
|
29 <param name="low_ind_cov" type="integer" min="0" value="0" label="Lower bound on individual coverage" />
|
|
30 <param name="lo_quality" type="integer" min="0" value="0" label="Lower bound on individual quality values" />
|
|
31 </when>
|
|
32 </conditional>
|
|
33 </inputs>
|
|
34
|
|
35 <outputs>
|
|
36 <data name="output" format="wsf" metadata_source="input" />
|
|
37 </outputs>
|
|
38
|
|
39 <tests>
|
|
40 <test>
|
|
41 <param name="input" value="test_in/sample.wsf" ftype="wsf" />
|
|
42 <param name="p1_input" value="test_in/a.ind" ftype="ind" />
|
|
43 <param name="choice" value="1" />
|
|
44 <param name="lo_coverage" value="0" />
|
|
45 <param name="hi_coverage" value="1000" />
|
|
46 <param name="low_ind_cov" value="3" />
|
|
47 <param name="lo_quality" value="30" />
|
|
48 <output name="output" file="test_out/modify_snp_table/modify.wsf" />
|
|
49 </test>
|
|
50 </tests>
|
|
51
|
|
52 <help>
|
|
53 **What it does**
|
|
54
|
|
55 The user specifies that some of the individuals in the selected SNP table are
|
|
56 form a "population" that has been previously defined using the Galaxy tool to
|
|
57 select individuals from a SNP table. One option is for the program to append
|
|
58 four columns to the table, giving the total counts for the two alleles, the
|
|
59 "genotype" for the population and the maximum quality value, taken over all
|
|
60 individuals in the population. If all defined genotypes in the population
|
|
61 are 2 (agree with the reference), the population's genotype is 2; similarly
|
|
62 for 0; otherwise the genotype is 1 (unless all individuals have undefined
|
|
63 genotype, in which case it is -1. The other option is to remove rows from
|
|
64 the table for which the total coverage for the population is either too low
|
|
65 or too high, and/or if the individual coverage or quality value is too low.
|
|
66 </help>
|
|
67 </tool>
|