changeset 0:8ea738667314 draft

planemo upload for repository https://github.com/ebi-gene-expression-group/container-galaxy-sc-tertiary/ commit 9bf9a6e46a330890be932f60d1d996dd166426c4
author ebi-gxa
date Wed, 03 Apr 2019 11:17:04 -0400
parents
children bdabb6af06e4
files README seurat_find_clusters.xml seurat_macros.xml
diffstat 3 files changed, 164 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README	Wed Apr 03 11:17:04 2019 -0400
@@ -0,0 +1,1 @@
+Seurat tools
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/seurat_find_clusters.xml	Wed Apr 03 11:17:04 2019 -0400
@@ -0,0 +1,113 @@
+<tool id="seurat_find_clusters" name="Seurat FindClusters" version="2.3.1+galaxy1">
+    <description>find clusters of cells</description>
+    <macros>
+        <import>seurat_macros.xml</import>
+    </macros>
+    <expand macro="requirements" />
+    <expand macro="version" />
+    <command detect_errors="exit_code"><![CDATA[
+        seurat-find-clusters.R
+
+        --input-object-file '$input'
+        --output-object-file '$output'
+        --output-text-file output_tab
+
+        #if $genes_use:
+          --genes-use '$genes_use'
+        #end if
+
+        #if str($adv.reduction_type):
+          --reduction-type '$adv.reduction_type'
+        #end if
+
+        #if str($adv.dims_use):
+          --dims-use \$(seq -s , 1 '$adv.dims_use')
+        #end if
+
+        #if str($adv.k_num_clusters):
+          --k-param '$adv.k_num_clusters'
+        #end if
+
+        #if str($adv.prune_snn):
+          --prune-snn '$adv.prune_snn'
+        #end if
+
+        #if str($adv.resolution):
+          --resolution '$adv.resolution'
+        #end if
+
+        #if str($adv.algorithm):
+          --algorithm '$adv.algorithm'
+        #end if
+
+  ## TODO add pdf support as optional
+  ]]></command>
+
+      <inputs>
+        <param name="input" argument="--input-object-file" type="data" format="rdata" label="Seurat RDS object" help="Seurat object produced by Seurat run PCA or other." />
+        <expand macro="genes-use-input"/>
+          <section name="adv" title="Advanced Options">
+            <param name="reduction_type" argument="--reduction-type" optional="true" type="select" label="Dimensional reduction type" help="dimensional reduction technique to use in construction of SNN graph. (e.g. 'pca', 'ica'). PCA by default.">
+              <option value="pca" selected="true">PCA</option>
+              <option value="ica">ICA</option>
+            </param>
+            <expand macro="dims-use-input"/>
+            <param name="k_num_clusters" argument="--k-param" optional="true" type="integer" label="Number of clusters (k) to compute" help="Defines k for the k-nearest neighbor algorithm."/>
+            <param name="prune_snn" argument="--prune-snn" optional="true" type="float" label="Prune SNN cutoff" help="Sets the cutoff for acceptable Jaccard distances when computing the neighborhood overlap for the SNN construction. Any edges with values less than or equal to this will be set to 0 and removed from the SNN graph. Essentially sets the strigency of pruning (0 — no pruning, 1 — prune everything). Defaults to 1/15."/>
+            <param name="resolution" argument="--resolution" optional="true" type="float" label="Resolution" help="Value of the resolution parameter, use a value above (below) 1.0 if you want to obtain a larger (smaller) number of communities. Defaults to 0.8."/>
+            <param name="algorithm" argument="--algorithm" optional="true" type="select" label="Modularity organization algorithm">
+              <option value="1" selected="true">Louvain</option>
+              <option value="2">Louvain algorithm with multilevel refinement</option>
+              <option value="3">SLM algorithm</option>
+            </param>
+          </section>
+      </inputs>
+      <outputs>
+          <!-- <data name="out_pdf" format="pdf" from_work_dir="out.pdf" label="${tool.name} on ${on_string}: Plots" /> -->
+          <data name="output" format="rdata" from_work_dir="*.rds" label="${tool.name} on ${on_string}: Seurat RDS"/>
+          <data name="output_tab" format="csv" from_work_dir="output_tab" label="${tool.name} on ${on_string}: CSV Seurat Clusters"/>
+      </outputs>
+
+    <tests>
+        <!-- Ensure count matrix input works -->
+        <test>
+            <param name="input" ftype="rdata" value="out_runpca.rds"/>
+            <output name="output" ftype="rdata" value="out_findclust.rds" compare="sim_size"/>
+        </test>
+    </tests>
+    <help><![CDATA[
+.. class:: infomark
+
+**What it does**
+
+Seurat_ is a toolkit for quality control, analysis, and exploration of single cell RNA sequencing data.
+It is developed and maintained by the `Satija Lab`_ at NYGC. Seurat aims to enable users to identify and
+interpret sources of heterogeneity from single cell transcriptomic measurements, and to integrate diverse
+types of single cell data.
+
+Seurat clustering use SNN method to determine different clusters in your dataset. In order to construct a
+SNN graph, you must have perform a PCA before launch this tool (you can use Seurat dimensional reduction).
+It will search k (30) nearest neighbors for each cells and link cells to each other if they shared the
+same neighbors. You can modulate the resolution in order to get larger (resolution superior to 1) or smaller
+(inferior to 1) clusters.
+
+-----
+
+**Inputs**
+
+    * RDS object
+
+-----
+
+**Outputs**
+
+    * Seurat RDS object
+
+.. _Seurat: https://www.nature.com/articles/nbt.4096
+.. _Satija Lab: https://satijalab.org/seurat/
+
+@VERSION_HISTORY@
+
+]]></help>
+      <expand macro="citations" />
+</tool>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/seurat_macros.xml	Wed Apr 03 11:17:04 2019 -0400
@@ -0,0 +1,50 @@
+<?xml version="1.0"?>
+<macros>
+
+    <token name="@VERSION@">0.0.5</token>
+
+    <xml name="requirements">
+        <requirements>
+            <requirement type="package" version="@VERSION@">seurat-scripts</requirement>
+        </requirements>
+    </xml>
+
+    <xml name="version">
+    	<version_command><![CDATA[
+echo $(R --version | grep version | grep -v GNU)", seurat version" $(R --vanilla --slave -e "library(seurat); cat(sessionInfo()\$otherPkgs\$seurat\$Version)" 2> /dev/null | grep -v -i "WARNING: ")
+    ]]></version_command>
+    </xml>
+
+    <xml name="genes-use-input">
+      <param name="genes_use" argument="--genes-use" optional="true" type="data" format="tsv, txt" label="Genes to use" help="A file with gene names to use in construction of SNN graph if building directly based on expression data rather than a dimensionally reduced representation (i.e. PCs)."/>
+    </xml>
+    <xml name="dims-use-input">
+      <param name="dims_use" argument="--dims-use" min="1" optional="true" type="integer" label="PCA Dimensions to use" help="Number of PCs (dimensions) to use in construction of the SNN graph."/>
+    </xml>
+
+    <token name="@VERSION_HISTORY@"><![CDATA[
+**Version history**
+
+0.0.1: Initial contribution. Maria Doyle, https://github.com/mblue9.
+
+2.3.1+galaxy0: Improved documentation and further exposition of all script's options. Pablo Moreno, Jonathan Manning and Ni Huang, Expression Atlas team https://www.ebi.ac.uk/gxa/home  at
+EMBL-EBI https://www.ebi.ac.uk/. Parts obtained from wrappers from Christophe Antoniewski(https://github.com/drosofff) and Lea Bellenger(https://github.com/bellenger-l).
+      ]]></token>
+
+
+    <xml name="citations">
+        <citations>
+            <citation type="doi">10.1038/nbt.4096</citation>
+            <citation type="bibtex">
+              @misc{r-seurat-scripts.git,
+              author = {Jonathan Manning, Pablo Moreno, EBI Gene Expression Team},
+              year = {2018},
+              title = {Seurat-scripts: command line interface for Seurat},
+              publisher = {GitHub},
+              journal = {GitHub repository},
+              url = {https://github.com/ebi-gene-expression-group/r-seurat-scripts.git},
+            }
+            </citation>
+        </citations>
+    </xml>
+</macros>