Mercurial > repos > iuc > drhip
comparison drhip.xml @ 0:dd2d60b55e0d draft default tip
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/drhip commit 15c654c3d27df68a47483031961ace7f5b8d998d
| author | iuc |
|---|---|
| date | Thu, 04 Dec 2025 15:05:26 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:dd2d60b55e0d |
|---|---|
| 1 <tool id="drhip" name="DRHIP" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@"> | |
| 2 <description>Data Reduction for HyPhy with Inference Processing</description> | |
| 3 <macros> | |
| 4 <token name="@TOOL_VERSION@">0.1.4</token> | |
| 5 <token name="@VERSION_SUFFIX@">0</token> | |
| 6 <token name="@PROFILE@">25.0</token> | |
| 7 </macros> | |
| 8 <requirements> | |
| 9 <requirement type="package" version="@TOOL_VERSION@">drhip</requirement> | |
| 10 </requirements> | |
| 11 <version_command>drhip --version</version_command> | |
| 12 <command detect_errors="exit_code"><![CDATA[ | |
| 13 mkdir -p hyphy_input | |
| 14 | |
| 15 ## For each method, create directory + link files with pattern: gene.METHOD.json | |
| 16 #if $busted_files | |
| 17 && mkdir -p hyphy_input/BUSTED | |
| 18 #for $file in $busted_files | |
| 19 && ln -s '${file}' 'hyphy_input/BUSTED/${file.element_identifier}.BUSTED.json' | |
| 20 #end for | |
| 21 #end if | |
| 22 | |
| 23 #if $fel_files | |
| 24 && mkdir -p hyphy_input/FEL | |
| 25 #for $file in $fel_files | |
| 26 && ln -s '${file}' 'hyphy_input/FEL/${file.element_identifier}.FEL.json' | |
| 27 #end for | |
| 28 #end if | |
| 29 | |
| 30 #if $meme_files | |
| 31 && mkdir -p hyphy_input/MEME | |
| 32 #for $file in $meme_files | |
| 33 && ln -s '${file}' 'hyphy_input/MEME/${file.element_identifier}.MEME.json' | |
| 34 #end for | |
| 35 #end if | |
| 36 | |
| 37 #if $prime_files | |
| 38 && mkdir -p hyphy_input/PRIME | |
| 39 #for $file in $prime_files | |
| 40 && ln -s '${file}' 'hyphy_input/PRIME/${file.element_identifier}.PRIME.json' | |
| 41 #end for | |
| 42 #end if | |
| 43 | |
| 44 #if $relax_files | |
| 45 && mkdir -p hyphy_input/RELAX | |
| 46 #for $file in $relax_files | |
| 47 && ln -s '${file}' 'hyphy_input/RELAX/${file.element_identifier}.RELAX.json' | |
| 48 #end for | |
| 49 #end if | |
| 50 | |
| 51 #if $contrastfel_files | |
| 52 && mkdir -p hyphy_input/CONTRASTFEL | |
| 53 #for $file in $contrastfel_files | |
| 54 && ln -s '${file}' 'hyphy_input/CONTRASTFEL/${file.element_identifier}.CONTRASTFEL.json' | |
| 55 #end for | |
| 56 #end if | |
| 57 | |
| 58 ## Run DRHIP with tabular output | |
| 59 && drhip | |
| 60 --input hyphy_input | |
| 61 --output output_dir | |
| 62 --tabular | |
| 63 ]]></command> | |
| 64 <inputs> | |
| 65 <param name="busted_files" type="data" format="hyphy_results.json" multiple="true" optional="true" | |
| 66 label="BUSTED results" | |
| 67 help="HyPhy BUSTED JSON result(s). Element identifier is used as gene name."/> | |
| 68 <param name="fel_files" type="data" format="hyphy_results.json" multiple="true" optional="true" | |
| 69 label="FEL results" | |
| 70 help="HyPhy FEL JSON result(s). Element identifier is used as gene name."/> | |
| 71 <param name="meme_files" type="data" format="hyphy_results.json" multiple="true" optional="true" | |
| 72 label="MEME results" | |
| 73 help="HyPhy MEME JSON result(s). Element identifier is used as gene name."/> | |
| 74 <param name="prime_files" type="data" format="hyphy_results.json" multiple="true" optional="true" | |
| 75 label="PRIME results" | |
| 76 help="HyPhy PRIME JSON result(s). Element identifier is used as gene name."/> | |
| 77 <param name="relax_files" type="data" format="hyphy_results.json" multiple="true" optional="true" | |
| 78 label="RELAX results" | |
| 79 help="HyPhy RELAX JSON result(s). Required for comparison group analyses. Element identifier is used as gene name."/> | |
| 80 <param name="contrastfel_files" type="data" format="hyphy_results.json" multiple="true" optional="true" | |
| 81 label="Contrast-FEL results" | |
| 82 help="HyPhy Contrast-FEL result(s). Required for comparison group analyses. Element identifier is used as gene name."/> | |
| 83 </inputs> | |
| 84 <outputs> | |
| 85 <data name="combined_summary" format="tabular" from_work_dir="output_dir/combined_summary.tab" | |
| 86 label="${tool.name} on ${on_string}: Combined Summary"/> | |
| 87 <data name="combined_sites" format="tabular" from_work_dir="output_dir/combined_sites.tab" | |
| 88 label="${tool.name} on ${on_string}: Combined Sites"/> | |
| 89 <data name="combined_comparison_summary" format="tabular" from_work_dir="output_dir/combined_comparison_summary.tab" | |
| 90 label="${tool.name} on ${on_string}: Combined Comparison Summary"> | |
| 91 <filter>relax_files or contrastfel_files</filter> | |
| 92 </data> | |
| 93 <data name="combined_comparison_site" format="tabular" from_work_dir="output_dir/combined_comparison_site.tab" | |
| 94 label="${tool.name} on ${on_string}: Combined Comparison Site"> | |
| 95 <filter>relax_files or contrastfel_files</filter> | |
| 96 </data> | |
| 97 </outputs> | |
| 98 <tests> | |
| 99 <test expect_num_outputs="2"> | |
| 100 <param name="busted_files" value="BUSTED/gene1.json" ftype="hyphy_results.json"/> | |
| 101 <param name="fel_files" value="FEL/gene1.json" ftype="hyphy_results.json"/> | |
| 102 <param name="meme_files" value="MEME/gene1.json" ftype="hyphy_results.json"/> | |
| 103 <param name="prime_files" value="PRIME/gene1.json" ftype="hyphy_results.json"/> | |
| 104 <output name="combined_summary" ftype="tabular"> | |
| 105 <assert_contents> | |
| 106 <has_text text="gene" /> | |
| 107 <has_text text="BUSTED" /> | |
| 108 <has_text text="gene1.json" /> | |
| 109 <has_text text="pval" /> | |
| 110 <has_text text="omega" /> | |
| 111 <has_n_lines n="2" /> | |
| 112 <has_n_columns n="9"/> | |
| 113 </assert_contents> | |
| 114 </output> | |
| 115 <output name="combined_sites" ftype="tabular"> | |
| 116 <assert_contents> | |
| 117 <has_text text="gene" /> | |
| 118 <has_text text="site" /> | |
| 119 <has_text text="gene1.json" /> | |
| 120 <has_text text="fel_selection" /> | |
| 121 <has_text text="meme_marker" /> | |
| 122 <has_text text="prime_marker" /> | |
| 123 <has_n_lines n="101" /> | |
| 124 <has_n_columns n="8"/> | |
| 125 </assert_contents> | |
| 126 </output> | |
| 127 </test> | |
| 128 <test expect_num_outputs="4"> | |
| 129 <param name="busted_files" value="BUSTED/gene2.json" ftype="hyphy_results.json"/> | |
| 130 <param name="fel_files" value="FEL/gene2.json" ftype="hyphy_results.json"/> | |
| 131 <param name="meme_files" value="MEME/gene2.json" ftype="hyphy_results.json"/> | |
| 132 <param name="prime_files" value="PRIME/gene2.json" ftype="hyphy_results.json"/> | |
| 133 <param name="relax_files" value="RELAX/gene2.json" ftype="hyphy_results.json"/> | |
| 134 <param name="contrastfel_files" value="CONTRASTFEL/gene2.json" ftype="hyphy_results.json"/> | |
| 135 <output name="combined_summary" ftype="tabular"> | |
| 136 <assert_contents> | |
| 137 <has_text text="gene" /> | |
| 138 <has_text text="BUSTED" /> | |
| 139 <has_text text="RELAX" /> | |
| 140 <has_text text="gene2.json" /> | |
| 141 <has_text text="pval" /> | |
| 142 <has_text text="omega" /> | |
| 143 <has_n_lines n="2" /> | |
| 144 <has_n_columns n="12"/> | |
| 145 </assert_contents> | |
| 146 </output> | |
| 147 <output name="combined_sites" ftype="tabular"> | |
| 148 <assert_contents> | |
| 149 <has_text text="gene" /> | |
| 150 <has_text text="site" /> | |
| 151 <has_text text="gene2.json" /> | |
| 152 <has_text text="fel_selection" /> | |
| 153 <has_text text="meme_marker" /> | |
| 154 <has_text text="prime_marker" /> | |
| 155 <has_n_lines n="101" /> | |
| 156 <has_n_columns n="8"/> | |
| 157 </assert_contents> | |
| 158 </output> | |
| 159 <output name="combined_comparison_summary" ftype="tabular"> | |
| 160 <assert_contents> | |
| 161 <has_text text="gene" /> | |
| 162 <has_text text="comparison_group" /> | |
| 163 <has_text text="gene2.json" /> | |
| 164 <has_text text="Foreground" /> | |
| 165 <has_text text="Reference" /> | |
| 166 <has_text text="background" /> | |
| 167 <has_n_lines n="4" /> | |
| 168 <has_n_columns n="6"/> | |
| 169 </assert_contents> | |
| 170 </output> | |
| 171 <output name="combined_comparison_site" ftype="tabular"> | |
| 172 <assert_contents> | |
| 173 <has_text text="gene" /> | |
| 174 <has_text text="site" /> | |
| 175 <has_text text="comparison_group" /> | |
| 176 <has_text text="gene2.json" /> | |
| 177 <has_text text="cfel_beta" /> | |
| 178 <has_text text="Foreground" /> | |
| 179 <has_text text="Reference" /> | |
| 180 <has_n_lines n="301" /> | |
| 181 <has_n_columns n="8"/> | |
| 182 </assert_contents> | |
| 183 </output> | |
| 184 </test> | |
| 185 </tests> | |
| 186 <help><![CDATA[ | |
| 187 **DRHIP: Data Reduction for HyPhy with Inference Processing** | |
| 188 | |
| 189 Combines results from multiple HyPhy selection analysis methods into unified tabular files. | |
| 190 | |
| 191 ----- | |
| 192 | |
| 193 **What it does** | |
| 194 | |
| 195 DRHIP takes JSON outputs from HyPhy selection analysis tools and creates summary tables that combine results across multiple genes and analysis methods. | |
| 196 | |
| 197 ----- | |
| 198 | |
| 199 **Inputs** | |
| 200 | |
| 201 DRHIP expects HyPhy JSON result files from one or more of these methods: | |
| 202 | |
| 203 - **BUSTED** – Branch-site test for episodic diversifying selection | |
| 204 - **FEL** – Fixed effects likelihood test for selection | |
| 205 - **MEME** – Mixed effects model of evolution | |
| 206 - **PRIME** – Property-informed models of evolution | |
| 207 - **RELAX** (optional) – Test for relaxation/intensification of selection | |
| 208 - **Contrast-FEL** (optional) – Compare selection between groups | |
| 209 | |
| 210 At least **one method must have at least one JSON input**. Individual method inputs are marked optional so that: | |
| 211 | |
| 212 - You can run DRHIP with any subset of methods (for example, only BUSTED+FEL), and | |
| 213 - If a method fails for some genes but succeeds for others, you can still pass the successful results and DRHIP will report what it can from the available methods. | |
| 214 | |
| 215 You can provide: | |
| 216 - Single datasets | |
| 217 - Multiple datasets selected at once | |
| 218 - Dataset collections (for workflow use); element identifiers are used as gene names. | |
| 219 | |
| 220 ----- | |
| 221 | |
| 222 **Outputs** | |
| 223 | |
| 224 **Always generated (if corresponding inputs are provided):** | |
| 225 - **Combined Summary** (`tabular`) – Gene-level statistics across all supplied methods | |
| 226 - **Combined Sites** (`tabular`) – Site-level analysis results across all supplied methods | |
| 227 | |
| 228 **Generated when RELAX or Contrast-FEL results are provided:** | |
| 229 - **Combined Comparison Summary** (`tabular`) – Group-specific statistics | |
| 230 - **Combined Comparison Site** (`tabular`) – Group-specific site analysis | |
| 231 | |
| 232 ----- | |
| 233 | |
| 234 **Typical usage patterns** | |
| 235 | |
| 236 - **Per-gene summary without branch-group comparisons:** provide any subset of BUSTED, FEL, MEME, PRIME results. | |
| 237 - **Branch-group comparisons:** provide the main methods plus RELAX and/or Contrast-FEL to obtain comparison summary and site tables. | |
| 238 | |
| 239 ----- | |
| 240 | |
| 241 **Workflow tips** | |
| 242 | |
| 243 - Connect HyPhy tool outputs directly to DRHIP inputs. | |
| 244 - Gene names come from collection element names. | |
| 245 - Rename collection elements to control gene names (for example, remove file extensions). | |
| 246 - Works best with dataset mapping over collections. | |
| 247 | |
| 248 ----- | |
| 249 | |
| 250 **More information** | |
| 251 | |
| 252 https://github.com/veg/DRHIP | |
| 253 ]]></help> | |
| 254 <citations> | |
| 255 <citation type="bibtex"> | |
| 256 @software{drhip2024, | |
| 257 author = {Callan, Danielle and Verdonk, Hannah and Kosakovsky Pond, Sergei L}, | |
| 258 title = {DRHIP: Data Reduction for HyPhy with Inference Processing}, | |
| 259 year = {2024}, | |
| 260 url = {https://github.com/veg/DRHIP}, | |
| 261 version = {@TOOL_VERSION@} | |
| 262 } | |
| 263 </citation> | |
| 264 </citations> | |
| 265 </tool> |
