Mercurial > repos > ebi-gxa > sceasy_convert
view sceasy_convert.xml @ 0:ef1449a3f358 draft
planemo upload for repository https://github.com/ebi-gene-expression-group/container-galaxy-sc-tertiary/ commit 06283e92907321289efca757b97c46c3bd94a2ea-dirty
author | ebi-gxa |
---|---|
date | Sun, 20 Oct 2019 08:47:47 -0400 |
parents | |
children | f62bc418173f |
line wrap: on
line source
<?xml version="1.0" encoding="utf-8"?> <tool id="sceasy_convert" name="SCEasy convert" version="@TOOL_VERSION@+galaxy0"> <description>a data object between formats</description> <macros> <import>sceasy_macros.xml</import> </macros> <expand macro="requirements"/> <command detect_errors="exit_code"><![CDATA[ #if str($conversion['direction']).startswith("loom") ln -s ${conversion.input_object_file} input.loom && #else if str($conversion['direction']).startswith("anndata") ln -s ${conversion.input_object_file} input.h5ad && #else ln -s ${conversion.input_object_file} input.rds && #end if Rscript -e 'library(sceasy)' #if $conversion.direction == "loom2sce" -e 'sce <- sceasy::convertFormat("input.loom", from="loom", to="sce", main_layer_name="${assay_name}")' -e 'saveRDS(sce, "output.rds")' -e 'print(sce)' #else if $conversion.direction == "sce2loom" -e 'sce <- readRDS("input.rds")' -e 'sceasy::convertFormat(sce, outFile="output.loom", from="sce", to="loom", main_layer="${assay}")' #else if $conversion.direction == "sce2anndata" -e 'sce <- readRDS("input.rds")' -e 'sceasy::convertFormat(sce, outFile="output.h5ad", from="sce", to="anndata", main_layer="${assay}")' -e 'print(sce)' #else if $conversion.direction == "seurat2anndata" -e 'srt <- readRDS("input.rds")' -e 'sceasy::convertFormat(srt, outFile="output.h5ad", from="seurat", to="anndata", assay="${assay}", main_layer="${dtype}")' -e 'print(srt)' #end if ]]></command> <inputs> <conditional name="conversion"> <param name="direction" type="select" label="Direction of conversion"> <option value="loom2sce" selected="true">Loom to SingleCellExperiment</option> <option value="sce2loom">SingleCellExperiment to Loom</option> <option value="seurat2anndata">Seurat to AnnData</option> <option value="sce2anndata">SingleCellExperiment to AnnData</option> </param> <when value="loom2sce"> <param name="input_object_file" type="data" format="h5" label="Input object in Loom format"/> <param name="assay_name" type="text" label="Name of the expression matrix to be transferred as"> <option value="counts" selected="true">counts</option> <option value="logcounts">logcounts</option> <option value="cpm">cpm</option> </param> </when> <when value="sce2loom"> <param name="input_object_file" type="data" format="rdata" label="Input object in SingleCellExperiment RDS format"/> <param name="assay" type="text" label="Name of the assay to be transferred as main layer" help="Please make sure the assay exists"> <option value="counts" selected="true">counts</option> <option value="logcounts">logcounts</option> <option value="cpm">cpm</option> </param> </when> <when value="sce2anndata"> <param name="input_object_file" type="data" format="rdata" label="Input object in SingleCellExperiment RDS format"/> <param name="assay" type="text" label="Name of the assay to be transferred as main layer" help="Please make sure the assay exists"> <option value="counts" selected="true">counts</option> <option value="logcounts">logcounts</option> <option value="cpm">cpm</option> </param> </when> <when value="seurat2anndata"> <param name="input_object_file" type="data" format="rdata" label="Input object in Seurat RDS format"/> <param name="assay" type="text" value="RNA" label="Name of the assay to be transferred" help="Please make sure the assay exists"/> <param name="dtype" type="select" value="RNA" label="Data type of the assay to be transferred" help="Please make sure the data type exists"> <option value="data" selected="true">data</option> <option value="counts">counts</option> <option value="scale.data">scale.data</option> </param> </when> </conditional> </inputs> <outputs> <data name="output_sce" format="rdata" from_work_dir="output.rds" label="${tool.name} on ${on_string}: SingleCellExperiment"> <filter>conversion['direction'].endswith('sce')</filter> </data> <data name="output_loom" format="h5" from_work_dir="output.loom" label="${tool.name} on ${on_string}: Loom"> <filter>conversion['direction'].endswith('loom')</filter> </data> <data name="output_anndata" format="h5" from_work_dir="output.h5ad" label="${tool.name} on ${on_string}: AnnData"> <filter>conversion['direction'].endswith('anndata')</filter> </data> </outputs> <tests> <test> <param name="direction" value="loom2sce"/> <param name="input_object_file" value="input.loom"/> <output name="output_sce" file="output.rds" ftype="rdata" compare="sim_size"/> </test> </tests> <help><![CDATA[ =================================================================== Convert scRNA data object between formats `sceasy::convertFormat()` =================================================================== Support the following conversion: * Loom <-> SingleCellExperiment (full) * SingleCellExperiment -> AnnData (matrix, metadata, reducedDim) * Seurat -> AnnData (matrix, metadata, reducedDim) @HELP@ @VERSION_HISTORY@ ]]></help> <expand macro="citations"/> </tool>