Mercurial > repos > greg > sample_names
comparison sample_names.xml @ 0:54380a6171b8 draft default tip
"planemo upload for repository https://github.com/gregvonkuster/galaxy_tools/tree/master/tools/misc/sample_names commit b935f36cfe430263564503ebb71f78dc79315acb"
| author | greg |
|---|---|
| date | Mon, 22 Nov 2021 00:30:39 +0000 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| -1:000000000000 | 0:54380a6171b8 |
|---|---|
| 1 <tool id="sample_names" name="Extract sample names" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@"> | |
| 2 <description>from input file names</description> | |
| 3 <macros> | |
| 4 <import>macros.xml</import> | |
| 5 </macros> | |
| 6 <command detect_errors="exit_code"><![CDATA[ | |
| 7 #import difflib | |
| 8 #import re | |
| 9 | |
| 10 #if $input_type_cond.input_type == 'single': | |
| 11 #set read1 = $input_type_cond.read1 | |
| 12 #set sample_name = re.sub('[^\s\w\-]', '_', str($read1.element_identifier)) | |
| 13 #else if $input_type_cond.input_type == 'pair': | |
| 14 #set read1 = $input_type_cond.read1 | |
| 15 #set read1_identifier = re.sub('[^\s\w\-]', '_', str($read1.element_identifier)) | |
| 16 #set read2 = $input_type_cond.read2 | |
| 17 #set read2_identifier = re.sub('[^\s\w\-]', '_', str($read2.element_identifier)) | |
| 18 #set matches = difflib.SequenceMatcher(None, read1_identifier, read2_identifier).get_matching_blocks() | |
| 19 #set match = $matches[0] | |
| 20 #set sample_name = re.sub('[^\s\w\-]', '_', str($read1_identifier[match.a:match.a + match.size])) | |
| 21 #else: | |
| 22 #set read1_name = $input_type_cond.reads_collection['forward'].name | |
| 23 #set read1_identifier = re.sub('[^\s\w\-]', '_', str($read1_name)) | |
| 24 #set read2_name = $input_type_cond.reads_collection['reverse'].name | |
| 25 #set read2_identifier = re.sub('[^\s\w\-]', '_', str($read2_name)) | |
| 26 #set matches = difflib.SequenceMatcher(None, read1_identifier, read2_identifier).get_matching_blocks() | |
| 27 #set match = $matches[0] | |
| 28 #set sample_name = re.sub('[^\s\w\-]', '_', str($read1_identifier[match.a:match.a + match.size])) | |
| 29 #end if | |
| 30 | |
| 31 echo '$sample_name' > '$output' | |
| 32 ]]></command> | |
| 33 <inputs> | |
| 34 <conditional name="input_type_cond"> | |
| 35 <param name="input_type" type="select" label="Choose the category of the files to be analyzed"> | |
| 36 <option value="single" selected="true">Single dataset</option> | |
| 37 <option value="pair">Dataset pair</option> | |
| 38 <option value="paired">List of dataset pairs</option> | |
| 39 </param> | |
| 40 <when value="single"> | |
| 41 <param name="read1" type="data" format="fastqsanger.gz,fastqsanger" label="Read1 fastq file"/> | |
| 42 </when> | |
| 43 <when value="pair"> | |
| 44 <param name="read1" type="data" format="fastqsanger.gz,fastqsanger" label="Read1 fastq file"/> | |
| 45 <param name="read2" type="data" format="fastqsanger.gz,fastqsanger" label="Read2 fastq file"/> | |
| 46 </when> | |
| 47 <when value="paired"> | |
| 48 <param name="reads_collection" type="data_collection" format="fastqsanger,fastqsanger.gz" collection_type="paired" label="Collection of fastqsanger paired read files"/> | |
| 49 </when> | |
| 50 </conditional> | |
| 51 </inputs> | |
| 52 <outputs> | |
| 53 <data name="output" format="txt"/> | |
| 54 </outputs> | |
| 55 <tests> | |
| 56 <!-- Single files --> | |
| 57 <test> | |
| 58 <param name="input_type" value="single"/> | |
| 59 <param name="read1" value="CMC_20E1_R1.fastq.gz" dbkey="89"/> | |
| 60 <output name="output" file="sample_names.txt" ftype="txt"/> | |
| 61 </test> | |
| 62 <!-- Paired reads in separate datasets --> | |
| 63 <test> | |
| 64 <param name="input_type" value="pair"/> | |
| 65 <param name="read1" value="CMC_20E1_R1.fastq.gz" dbkey="89"/> | |
| 66 <param name="read2" value="CMC_20E1_R2.fastq.gz" dbkey="89"/> | |
| 67 <output name="output" file="sample_names2.txt" ftype="txt"/> | |
| 68 </test> | |
| 69 <!-- Collection of Paired reads --> | |
| 70 <test> | |
| 71 <param name="input_type" value="paired"/> | |
| 72 <param name="reads_collection"> | |
| 73 <collection type="paired"> | |
| 74 <element name="forward" value="CMC_20E1_R1.fastq.gz"/> | |
| 75 <element name="reverse" value="CMC_20E1_R2.fastq.gz"/> | |
| 76 </collection> | |
| 77 </param> | |
| 78 <output name="output" file="sample_names3.txt" ftype="txt"/> | |
| 79 </test> | |
| 80 <!-- Collection of Paired reads --> | |
| 81 <test> | |
| 82 <param name="input_type" value="paired"/> | |
| 83 <param name="reads_collection"> | |
| 84 <collection type="paired"> | |
| 85 <element name="forward" value="SRR14085881_forward"/> | |
| 86 <element name="reverse" value="SRR14085881_reverse"/> | |
| 87 </collection> | |
| 88 </param> | |
| 89 <output name="output" file="sample_names4.txt" ftype="txt"/> | |
| 90 </test> | |
| 91 </tests> | |
| 92 <help> | |
| 93 **What it does** | |
| 94 | |
| 95 Accepts fastqsanger sample files, extracts a unique portion of the file name as the sample name, and writes it to | |
| 96 the output. The output text file can be consumed by the **Parse parameter value** expression tool to provide workflow | |
| 97 parameter values to the **Read group identifier (ID)** and the **Sample name identifier (SM)** parameters in the | |
| 98 **Map with BWA-MEM** tool. | |
| 99 </help> | |
| 100 <expand macro="citations"/> | |
| 101 </tool> | |
| 102 |
