1
|
1 <tool id="kcca1" name="Kernel Canonical Correlation Analysis" version="1.1.0">
|
|
2 <description> </description>
|
|
3 <expand macro="requirements" />
|
|
4 <macros>
|
|
5 <import>statistic_tools_macros.xml</import>
|
|
6 </macros>
|
|
7 <command interpreter="python">
|
|
8 <![CDATA[
|
|
9 kcca.py
|
|
10 --input=$input1
|
|
11 --output1=$out_file1
|
|
12 --x_cols=$x_cols
|
|
13 --y_cols=$y_cols
|
|
14 --kernel=$kernelChoice.kernel
|
|
15 --features=$features
|
|
16 #if $kernelChoice.kernel == "rbfdot" or $kernelChoice.kernel == "anovadot":
|
|
17 --sigma=$kernelChoice.sigma
|
|
18 --degree="None"
|
|
19 --scale="None"
|
|
20 --offset="None"
|
|
21 --order="None"
|
|
22 #elif $kernelChoice.kernel == "polydot":
|
|
23 --sigma="None"
|
|
24 --degree=$kernelChoice.degree
|
|
25 --scale=$kernelChoice.scale
|
|
26 --offset=$kernelChoice.offset
|
|
27 --order="None"
|
|
28 #elif $kernelChoice.kernel == "tanhdot":
|
|
29 --sigma="None"
|
|
30 --degree="None"
|
|
31 --scale=$kernelChoice.scale
|
|
32 --offset=$kernelChoice.offset
|
|
33 --order="None"
|
|
34 #elif $kernelChoice.kernel == "besseldot":
|
|
35 --sigma=$kernelChoice.sigma
|
|
36 --degree=$kernelChoice.degree
|
|
37 --scale="None"
|
|
38 --offset="None"
|
|
39 --order=$kernelChoice.order
|
|
40 #elif $kernelChoice.kernel == "anovadot":
|
|
41 --sigma=$kernelChoice.sigma
|
|
42 --degree=$kernelChoice.degree
|
|
43 --scale="None"
|
|
44 --offset="None"
|
|
45 --order="None"
|
|
46 #else:
|
|
47 --sigma="None"
|
|
48 --degree="None"
|
|
49 --scale="None"
|
|
50 --offset="None"
|
|
51 --order="None"
|
|
52 #end if
|
|
53 ]]>
|
|
54 </command>
|
|
55 <inputs>
|
|
56 <param format="tabular" name="input1" type="data" label="Select data" help="Dataset missing? See TIP below."/>
|
|
57 <param name="x_cols" label="Select columns containing X variables " type="data_column" data_ref="input1" numerical="True" multiple="true" >
|
|
58 <validator type="no_options" message="Please select at least one column."/>
|
|
59 </param>
|
|
60 <param name="y_cols" label="Select columns containing Y variables " type="data_column" data_ref="input1" numerical="True" multiple="true" >
|
|
61 <validator type="no_options" message="Please select at least one column."/>
|
|
62 </param>
|
|
63 <param name="features" size="10" type="integer" value="2" label="Number of canonical components to return" help="Enter an integer value greater than 0"/>
|
|
64 <conditional name="kernelChoice">
|
|
65 <param name="kernel" type="select" label="Kernel function">
|
|
66 <option value="rbfdot" selected="true">Gaussian Radial Basis Function</option>
|
|
67 <option value="polydot">Polynomial</option>
|
|
68 <option value="vanilladot">Linear</option>
|
|
69 <option value="tanhdot">Hyperbolic</option>
|
|
70 <option value="laplacedot">Laplacian</option>
|
|
71 <option value="besseldot">Bessel</option>
|
|
72 <option value="anovadot">ANOVA Radial Basis Function</option>
|
|
73 <option value="splinedot">Spline</option>
|
|
74 </param>
|
|
75 <when value="vanilladot" />
|
|
76 <when value="splinedot" />
|
|
77 <when value="rbfdot">
|
|
78 <param name="sigma" size="10" type="float" value="1" label="sigma (inverse kernel width)" />
|
|
79 </when>
|
|
80 <when value="laplacedot">
|
|
81 <param name="sigma" size="10" type="float" value="1" label="sigma (inverse kernel width)" />
|
|
82 </when>
|
|
83 <when value="polydot">
|
|
84 <param name="degree" size="10" type="float" value="1" label="degree" />
|
|
85 <param name="scale" size="10" type="float" value="1" label="scale" />
|
|
86 <param name="offset" size="10" type="float" value="1" label="offset" />
|
|
87 </when>
|
|
88 <when value="tanhdot">
|
|
89 <param name="scale" size="10" type="float" value="1" label="scale" />
|
|
90 <param name="offset" size="10" type="float" value="1" label="offset" />
|
|
91 </when>
|
|
92 <when value="besseldot">
|
|
93 <param name="sigma" size="10" type="float" value="1" label="sigma" />
|
|
94 <param name="order" size="10" type="float" value="1" label="order" />
|
|
95 <param name="degree" size="10" type="float" value="1" label="degree" />
|
|
96 </when>
|
|
97 <when value="anovadot">
|
|
98 <param name="sigma" size="10" type="float" value="1" label="sigma" />
|
|
99 <param name="degree" size="10" type="float" value="1" label="degree" />
|
|
100 </when>
|
|
101 </conditional>
|
|
102 </inputs>
|
|
103 <outputs>
|
|
104 <data format="input" name="out_file1" metadata_source="input1" />
|
|
105 </outputs>
|
|
106 <tests>
|
|
107 <test>
|
|
108 <param name="input1" value="iris.tabular"/>
|
|
109 <param name="x_cols" value="1,2"/>
|
|
110 <param name="y_cols" value="3,4"/>
|
|
111 <param name="kernel" value="anovadot"/>
|
|
112 <param name="features" value="4"/>
|
|
113 <param name="sigma" value="0.1"/>
|
|
114 <param name="degree" value="2"/>
|
|
115 <output name="out_file1" file="kcca_out1.tabular" compare="re_match"/>
|
|
116 </test>
|
|
117 <test>
|
|
118 <param name="input1" value="iris.tabular"/>
|
|
119 <param name="x_cols" value="3,4"/>
|
|
120 <param name="y_cols" value="1,2"/>
|
|
121 <param name="kernel" value="rbfdot"/>
|
|
122 <param name="features" value="2"/>
|
|
123 <param name="sigma" value="0.5"/>
|
|
124 <output name="out_file1" file="kcca_out2.tabular" compare="re_match"/>
|
|
125 </test>
|
|
126 </tests>
|
|
127 <help>
|
|
128 <![CDATA[
|
|
129
|
|
130
|
|
131 .. class:: infomark
|
|
132
|
|
133 **TIP:** If your data is not TAB delimited, use *Edit Datasets->Convert characters*
|
|
134
|
|
135 -----
|
|
136
|
|
137 .. class:: infomark
|
|
138
|
|
139 **What it does**
|
|
140
|
|
141 This tool uses functions from 'kernlab' library from R statistical package to perform Kernel Canonical Correlation Analysis (kCCA) on the input data.
|
|
142
|
|
143 *Alexandros Karatzoglou, Alex Smola, Kurt Hornik, Achim Zeileis (2004). kernlab - An S4 Package for Kernel Methods in R. Journal of Statistical Software 11(9), 1-20. URL http://www.jstatsoft.org/v11/i09/*
|
|
144
|
|
145 -----
|
|
146
|
|
147 .. class:: warningmark
|
|
148
|
|
149 **Note**
|
|
150
|
|
151 This tool currently treats all variables as continuous numeric variables. Running the tool on categorical variables might result in incorrect results. Rows containing non-numeric (or missing) data in any of the chosen columns will be skipped from the analysis.
|
|
152
|
|
153 ]]>
|
|
154 </help>
|
|
155 </tool>
|