Mercurial > repos > jjohnson > netmhc
comparison netmhc.xml @ 0:bb25a4e5f211 draft default tip
"planemo upload for repository https://github.com/jj-umn/galaxytools/tree/master/netmhc commit 3bf9a39fe11622806ac6b032ba4fc6139a003580"
| author | jjohnson |
|---|---|
| date | Tue, 18 Feb 2020 14:48:51 -0500 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:bb25a4e5f211 |
|---|---|
| 1 <tool id="netmhc" name="netMHC" version="4.0.0"> | |
| 2 <description>MHC Binding prediction</description> | |
| 3 <requirements> | |
| 4 <requirement type="package" version="4.0">netMHC</requirement> | |
| 5 </requirements> | |
| 6 <stdio> | |
| 7 <exit_code range="1:" /> | |
| 8 </stdio> | |
| 9 <configfiles> | |
| 10 <configfile name="format_out"><![CDATA[ | |
| 11 import sys | |
| 12 import re | |
| 13 if len(sys.argv) != 3: | |
| 14 print >> sys.stderr, "python script.py netMHC_output_tsv output_file" | |
| 15 exit(4); | |
| 16 hpat = '^\s*(pos)\s+(HLA)\s+(peptide)\s+(Core)\s+(Offset)\s+(I_pos)\s+(I_len)\s+(D_pos)\s+(D_len)\s+(iCore)\s+(Identity)\s+(1-log50k.aff.)\s+(Affinity.nM.)\s+(%Rank)\s+(BindLevel)\s*$' | |
| 17 epat = '^\s*(\d+)\s+(\S+)\s+([A-Z]+)\s+([-_A-Z]*)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([0-9]+)\s+([A-Z]+)\s+(\S+)\s+([0-9.]+)\s+([0-9.]+)\s+([0-9.]+).*?([SWB]*)$' | |
| 18 cnt = 0 | |
| 19 try: | |
| 20 wh = open(sys.argv[2],'w') | |
| 21 fh = open(sys.argv[1],'r') | |
| 22 for i,line in enumerate(fh): | |
| 23 line = line.rstrip() | |
| 24 if not line: | |
| 25 continue | |
| 26 ## print >> sys.stderr, line | |
| 27 m = re.match(epat,line) | |
| 28 if m: | |
| 29 ## print >> sys.stderr, str(m.groups()) | |
| 30 wh.write("%s\n" % '\t'.join([x if x else '' for x in m.groups()])) | |
| 31 cnt += 1 | |
| 32 elif cnt == 0: | |
| 33 m = re.match(hpat,line) | |
| 34 if m: | |
| 35 ## print >> sys.stderr, str(m.groups()) | |
| 36 wh.write("#%s\n" % '\t'.join(m.groups())) | |
| 37 cnt += 1 | |
| 38 wh.close() | |
| 39 fh.close() | |
| 40 except Exception, e: | |
| 41 print sys.stderr, "error: %s" % e | |
| 42 exit(3) | |
| 43 ]]> | |
| 44 </configfile> | |
| 45 <configfile name="format_tsv"><![CDATA[ | |
| 46 #!/usr/bin/env python | |
| 47 import sys | |
| 48 if len(sys.argv) != 3: | |
| 49 print >> sys.stderr, "python script.py netMHC_xls output_file" | |
| 50 exit(4); | |
| 51 try: | |
| 52 wh = open(sys.argv[2],'w') | |
| 53 fh = open(sys.argv[1],'r') | |
| 54 for n,line in enumerate(fh): | |
| 55 if n > 1: | |
| 56 wh.write(line) | |
| 57 if n == 0: | |
| 58 alleles = line.rstrip('\n').split('\t') | |
| 59 if n == 1: | |
| 60 hdr = line.rstrip('\n').split('\t') | |
| 61 wh.write('#%s\n' % '\t'.join([' '.join([alleles[i - i%3],hdr[i]]).strip() for i in range(len(hdr))])) | |
| 62 wh.close() | |
| 63 fh.close() | |
| 64 except Exception, e: | |
| 65 print sys.stderr, "error: %s" % e | |
| 66 exit(3) | |
| 67 ]]> | |
| 68 </configfile> | |
| 69 </configfiles> | |
| 70 <command><![CDATA[ | |
| 71 ### netMHC -tdir tmp -f OS11Fusion.fa -a 'HLA-A3001,HLA-A0301,HLA-B4201,HLA-B5802,HLA-C0602' -l '8,9,10' -xls -xlsfile OS11Fusion.xls > OS11_netMHC.out | |
| 72 #set $valid_alleles = [ | |
| 73 'BoLA-AW10', | |
| 74 'BoLA-D18.4', | |
| 75 'BoLA-HD6', | |
| 76 'BoLA-JSP.1', | |
| 77 'BoLA-T2C', | |
| 78 'BoLA-T2a', | |
| 79 'BoLA-T2b', | |
| 80 'H-2-Db', | |
| 81 'H-2-Dd', | |
| 82 'H-2-Kb', | |
| 83 'H-2-Kd', | |
| 84 'H-2-Kk', | |
| 85 'H-2-Ld', | |
| 86 'HLA-A0101', | |
| 87 'HLA-A0201', | |
| 88 'HLA-A0202', | |
| 89 'HLA-A0203', | |
| 90 'HLA-A0205', | |
| 91 'HLA-A0206', | |
| 92 'HLA-A0207', | |
| 93 'HLA-A0211', | |
| 94 'HLA-A0212', | |
| 95 'HLA-A0216', | |
| 96 'HLA-A0217', | |
| 97 'HLA-A0219', | |
| 98 'HLA-A0250', | |
| 99 'HLA-A0301', | |
| 100 'HLA-A0302', | |
| 101 'HLA-A0319', | |
| 102 'HLA-A1101', | |
| 103 'HLA-A2301', | |
| 104 'HLA-A2402', | |
| 105 'HLA-A2403', | |
| 106 'HLA-A2501', | |
| 107 'HLA-A2601', | |
| 108 'HLA-A2602', | |
| 109 'HLA-A2603', | |
| 110 'HLA-A2902', | |
| 111 'HLA-A3001', | |
| 112 'HLA-A3002', | |
| 113 'HLA-A3101', | |
| 114 'HLA-A3201', | |
| 115 'HLA-A3207', | |
| 116 'HLA-A3215', | |
| 117 'HLA-A3301', | |
| 118 'HLA-A6601', | |
| 119 'HLA-A6801', | |
| 120 'HLA-A6802', | |
| 121 'HLA-A6823', | |
| 122 'HLA-A6901', | |
| 123 'HLA-A8001', | |
| 124 'HLA-B0702', | |
| 125 'HLA-B0801', | |
| 126 'HLA-B0802', | |
| 127 'HLA-B0803', | |
| 128 'HLA-B1401', | |
| 129 'HLA-B1402', | |
| 130 'HLA-B1501', | |
| 131 'HLA-B1502', | |
| 132 'HLA-B1503', | |
| 133 'HLA-B1509', | |
| 134 'HLA-B1517', | |
| 135 'HLA-B1801', | |
| 136 'HLA-B2705', | |
| 137 'HLA-B2720', | |
| 138 'HLA-B3501', | |
| 139 'HLA-B3503', | |
| 140 'HLA-B3701', | |
| 141 'HLA-B3801', | |
| 142 'HLA-B3901', | |
| 143 'HLA-B4001', | |
| 144 'HLA-B4002', | |
| 145 'HLA-B4013', | |
| 146 'HLA-B4201', | |
| 147 'HLA-B4402', | |
| 148 'HLA-B4403', | |
| 149 'HLA-B4501', | |
| 150 'HLA-B4506', | |
| 151 'HLA-B4601', | |
| 152 'HLA-B4801', | |
| 153 'HLA-B5101', | |
| 154 'HLA-B5301', | |
| 155 'HLA-B5401', | |
| 156 'HLA-B5701', | |
| 157 'HLA-B5703', | |
| 158 'HLA-B5801', | |
| 159 'HLA-B5802', | |
| 160 'HLA-B7301', | |
| 161 'HLA-B8101', | |
| 162 'HLA-B8301', | |
| 163 'HLA-C0303', | |
| 164 'HLA-C0401', | |
| 165 'HLA-C0501', | |
| 166 'HLA-C0602', | |
| 167 'HLA-C0701', | |
| 168 'HLA-C0702', | |
| 169 'HLA-C0802', | |
| 170 'HLA-C1203', | |
| 171 'HLA-C1402', | |
| 172 'HLA-C1502', | |
| 173 'HLA-E0101', | |
| 174 'HLA-E0103', | |
| 175 'Mamu-A01', | |
| 176 'Mamu-A02', | |
| 177 'Mamu-A07', | |
| 178 'Mamu-A11', | |
| 179 'Mamu-A20102', | |
| 180 'Mamu-A2201', | |
| 181 'Mamu-A2601', | |
| 182 'Mamu-A70103', | |
| 183 'Mamu-B01', | |
| 184 'Mamu-B03', | |
| 185 'Mamu-B08', | |
| 186 'Mamu-B1001', | |
| 187 'Mamu-B17', | |
| 188 'Mamu-B3901', | |
| 189 'Mamu-B52', | |
| 190 'Mamu-B6601', | |
| 191 'Mamu-B8301', | |
| 192 'Mamu-B8701', | |
| 193 'Patr-A0101', | |
| 194 'Patr-A0301', | |
| 195 'Patr-A0401', | |
| 196 'Patr-A0701', | |
| 197 'Patr-A0901', | |
| 198 'Patr-B0101', | |
| 199 'Patr-B1301', | |
| 200 'Patr-B2401', | |
| 201 'SLA-10401', | |
| 202 'SLA-10701', | |
| 203 'SLA-20401', | |
| 204 'SLA-30401', | |
| 205 ] | |
| 206 #set $allelelist = [] | |
| 207 #set $unknown_alleles = [] | |
| 208 #if $alleles.allelesrc == 'history': | |
| 209 #for $line in open(str($alleles.allele_file)): | |
| 210 #set $fields = $line.strip().split(',') | |
| 211 #set $allele = $fields[0].strip() | |
| 212 #if $allele in $valid_alleles: | |
| 213 $allelelist.append($allele) | |
| 214 #else | |
| 215 $unknown_alleles.append($allele) | |
| 216 #end if | |
| 217 #end for | |
| 218 #else: | |
| 219 #for $word in str($alleles.allele_text).strip().split(): | |
| 220 #set $fields = $word.strip().split(',') | |
| 221 #set $allele = $fields[0].strip() | |
| 222 #if $allele in $valid_alleles: | |
| 223 $allelelist.append($allele) | |
| 224 #else | |
| 225 $unknown_alleles.append($allele) | |
| 226 #end if | |
| 227 #end for | |
| 228 #end if | |
| 229 #if len($allelelist) < 1 | |
| 230 echo 'No netMHC alleles'; | |
| 231 echo "unknown: $unknown_alleles"; | |
| 232 exit 1; | |
| 233 #else | |
| 234 echo "netMHC alleles: $allelelist" | |
| 235 && echo "unknown alleles: $unknown_alleles" | |
| 236 && echo "peptide lengths: $lengths" | |
| 237 #set $alist = ','.join($allelelist) | |
| 238 && netMHC -tdir tmp -f "$seq_fasta" -a '$alist' -l '$lengths' $sort | |
| 239 #if $threshold_sec.rth: | |
| 240 -rth $threshold_sec.rth | |
| 241 #end if | |
| 242 #if $threshold_sec.rlt: | |
| 243 -rlt $threshold_sec.rlt | |
| 244 #end if | |
| 245 -xls -xlsfile results.tsv > results.out | |
| 246 && python $format_out results.out $output | |
| 247 && python $format_tsv results.tsv $results_tsv | |
| 248 #end if | |
| 249 ]]></command> | |
| 250 <inputs> | |
| 251 <param name="seq_fasta" type="data" format="fasta" label="Peptide Sequence Fasta"/> | |
| 252 <conditional name="alleles"> | |
| 253 <param name="allelesrc" type="select" label="Alleles"> | |
| 254 <option value="history">From history</option> | |
| 255 <option value="entry">Entered</option> | |
| 256 </param> | |
| 257 <when value="history"> | |
| 258 <param name="allele_file" type="data" format="txt" label="Alleles file"/> | |
| 259 <help>The dataset should have on allele per line: HLA-A0201</help> | |
| 260 </when> | |
| 261 <when value="entry"> | |
| 262 <param name="allele_text" type="text" label="Alleles"> | |
| 263 <help>Enter alleles separated by commas: HLA-A0201,HLA-B0702</help> | |
| 264 <validator type="regex" message="IDs separted by commas">^(\S+)(,\S+)*$</validator> | |
| 265 </param> | |
| 266 </when> | |
| 267 </conditional> | |
| 268 <param name="lengths" type="select" multiple="true" label="peptide lengths for prediction"> | |
| 269 <help>Used for any alleles which don't include specified lengths</help> | |
| 270 <option value="8">8</option> | |
| 271 <option value="9">9</option> | |
| 272 <option value="10">10</option> | |
| 273 <option value="11">11</option> | |
| 274 <option value="12">12 (unvalidated)</option> | |
| 275 <option value="13">13 (unvalidated)</option> | |
| 276 <option value="14">14 (unvalidated)</option> | |
| 277 </param> | |
| 278 <param name="sort" type="boolean" truevalue="-s" falsevalue="" checked="false" label="Sort output on descending affinity"/> | |
| 279 <section name="threshold_sec" expanded="false" title="Adjust Thresholds"> | |
| 280 <param name="rth" type="float" value="0.500000" optional="true" label="Threshold for high binding peptides (%Rank)"/> | |
| 281 <param name="rlt" type="float" value="2.000000" optional="true" label="Threshold for low binding peptides (%Rank)"/> | |
| 282 </section> | |
| 283 </inputs> | |
| 284 <outputs> | |
| 285 <data name="output" format="tabular" label="${tool.name} on ${on_string} Binding Scores"/> | |
| 286 <data name="results_tsv" format="tabular" label="${tool.name} on ${on_string} Peptide Summary"/> | |
| 287 </outputs> | |
| 288 <help><![CDATA[ | |
| 289 **NetMHC** | |
| 290 | |
| 291 http://www.cbs.dtu.dk/services/NetMHC/ | |
| 292 | |
| 293 NetMHC 4.0 predicts binding of peptides to a number of different HLA alleles using artificial neural networks (ANNs). | |
| 294 | |
| 295 ANNs have been trained for 78 different Human MHC (HLA) alleles representing all 12 HLA A and B Supertypes as defined by Lund et al. (2004). Furthermore 41 animal (Monkey, Cattle, Pig, and Mouse) allele predictions are available. | |
| 296 | |
| 297 Prediction values are given in nM IC50 values. | |
| 298 | |
| 299 Predictions of lengths 8-14: Predictions can be made for lengths between 8 and 14 for all alleles using an novel approximation algorithm using ANNs trained on 9mer peptides. Probably because of the limited amount of available 10mer data this method has a better predictive value than ANNs trained on 10mer data. | |
| 300 Predictions of peptides longer than 11 have not been extensively validated! | |
| 301 Caution should be taken for 8mer predictions as some alleles might not bind 8mers to any significant extend. | |
| 302 | |
| 303 Strong and weak binding peptides are indicated in the output. In the selection window for HLA alleles, the recommended allele for each HLA supertype is indicated. | |
| 304 | |
| 305 **Inputs** | |
| 306 | |
| 307 A fasta file of peptide sequences in your history | |
| 308 | |
| 309 A list Alleles entered as text or from a history dataset, one allele per line | |
| 310 | |
| 311 **Outputs** | |
| 312 | |
| 313 **Binding Scores** | |
| 314 | |
| 315 ==== ========= ========== ========= ====== ===== ===== ===== ===== ========== ============= ============= ============ ===== ========= | |
| 316 #pos HLA peptide Core Offset I_pos I_len D_pos D_len iCore Identity 1-log50k(aff) Affinity(nM) %Rank BindLevel | |
| 317 ==== ========= ========== ========= ====== ===== ===== ===== ===== ========== ============= ============= ============ ===== ========= | |
| 318 16 HLA-A3001 HGRWDTNCA HGRWDTNCA 0 0 0 0 0 HGRWDTNCA SOGA2_CREB3L1 0.487 257.58 0.90 WB | |
| 319 1 HLA-A3001 LQNELERLK LQNELERLK 0 0 0 0 0 LQNELERLK SOGA2_CREB3L1 0.242 3647.96 6.00 | |
| 320 16 HLA-A3001 HGRWDTNCAP HGRWTNCAP 0 0 0 4 1 HGRWDTNCAP SOGA2_CREB3L1 0.185 6739.05 9.50 | |
| 321 6 HLA-C0602 ERLKEMQSM ERLKEMQSM 0 0 0 0 0 ERLKEMQSM SOGA2_CREB3L1 0.382 798.43 0.40 SB | |
| 322 12 HLA-C0602 QSMEHGRWD QSMEHGRWD 0 0 0 0 0 QSMEHGRWD SOGA2_CREB3L1 0.229 4177.34 1.50 WB | |
| 323 3 HLA-C0602 NELERLKEM NELERLKEM 0 0 0 0 0 NELERLKEM SOGA2_CREB3L1 0.209 5224.29 1.80 WB | |
| 324 20 HLA-A3001 DTNCAPSW DTNCA-PSW 0 5 1 0 0 DTNCAPSW SOGA2_CREB3L1 0.050 29125.62 60.00 | |
| 325 20 HLA-C0602 DTNCAPSW DT-NCAPSW 0 2 1 0 0 DTNCAPSW SOGA2_CREB3L1 0.005 47120.04 90.00 | |
| 326 ==== ========= ========== ========= ====== ===== ===== ===== ===== ========== ============= ============= ============ ===== ========= | |
| 327 | |
| 328 | |
| 329 | |
| 330 **Peptide Summary** | |
| 331 | |
| 332 ==== ========= ============= ============ ============== ============== ============ ============== ============== =========== ========= | |
| 333 #Pos Peptide ID HLA-A3001 nM HLA-A3001 Rank HLA-A3001 Core HLA-C0602 nM HLA-C0602 Rank HLA-C0602 Core H_Avg_Ranks N_binders | |
| 334 ==== ========= ============= ============ ============== ============== ============ ============== ============== =========== ========= | |
| 335 16 HGRWDTNCA SOGA2_CREB3L1 257.6 0.900 HGRWDTNCA 35765.3 25.000 HGRWDTNCA 4.124 1 | |
| 336 20 DTNCAPSW SOGA2_CREB3L1 29125.6 60.000 DTNCA_PSW 47120.0 90.000 DT_NCAPSW 6.909 0 | |
| 337 ==== ========= ============= ============ ============== ============== ============ ============== ============== =========== ========= | |
| 338 | |
| 339 | |
| 340 ]]></help> | |
| 341 <citations> | |
| 342 <citation type="doi">10.1093/nar/gkn202</citation> | |
| 343 <citation type="doi">10.1093/bioinformatics/btn128</citation> | |
| 344 <citation type="doi">10.1093/bioinformatics/btn100</citation> | |
| 345 <citation type="doi">10.1110/ps.0239403</citation> | |
| 346 </citations> | |
| 347 </tool> |
