view seurat_scale_data.xml @ 6:5e9ba303f9e1 draft default tip

planemo upload commit 0264c359f1d638bbbbab515a3502231f679cdcf6
author ebi-gxa
date Sat, 02 Mar 2024 10:42:19 +0000
parents d2f6eac0ad42
children
line wrap: on
line source

<tool id="seurat_scale_data" name="Seurat ScaleData" profile="18.01" version="@SEURAT_VERSION@+galaxy0">
    <description>scale and center genes</description>
    <macros>
        <import>seurat_macros.xml</import>
    </macros>
    <expand macro="requirements" />
    <expand macro="version" />
    <command detect_errors="exit_code"><![CDATA[
Rscript '$__tool_directory__/scripts/'seurat-scale-data.R

@INPUT_OBJECT@
#if $vars:
    --vars-to-regress '$vars'
#else
    --vars-to-regress nUMI
#end if

#if $genes_use:
    --genes-use '$genes_use'
#end if

--model-use '$model'

$use_umi
$do_not_center

#if $scale_max:
    --scale-max '$scale_max'
#end if

#if $block_size:
    --block-size '$block_size'
#end if

#if $min_cells_to_block:
    --min-cells-to-block '$min_cells_to_block'
#end if

$check_for_norm

@OUTPUT_OBJECT@
]]></command>

    <inputs>
        <expand macro="input_object_params"/>
        <expand macro="output_object_params"/>
        <expand macro="genes-use-input"/>
        <param name="vars" argument="--vars-to-regress" type='text' value="nCount_RNA" label="Vars to regress" help="Comma-separated list of variables to regress out (previously latent.vars in RegressOut). For example, nCount_RNA, or percent.mito.">
          <validator type="regex" message="Please only use letters or numbers">^[\(\w\)]+$</validator>
          <option value="nCount_RNA">nCount_RNA</option>
          <option value="nFeature_RNA">nFeature_RNA</option>
        </param>
        <param name="model" argument="--model-use" type="select" label="Statistical model" help="Use a linear model or generalized linear model (poisson, negative binomial) for the regression.">
          <option value="linear" selected="true">Linear model</option>
          <option value="poisson">Poisson model</option>
          <option value="negbinom">Negative binomial model</option>
        </param>
        <param name="use_umi" argument="--use-umi" type="boolean" truevalue="--use-umi TRUE" falsevalue="" checked="false" label="Use UMIs." help="Regress on UMI count data. Default is FALSE for linear modeling, but automatically set to TRUE if model.use is 'negbinom' or 'poisson'."/>
        <param name="do_not_center" argument="--do-not-center" type="boolean" falsevalue="" truevalue="--do-not-center" checked="false" label="Skip centering" help="By default data is centered, with this option you can skip centering."/>
        <param name="do_not_scale" argument="--do-not-scale" type="boolean" falsevalue="" truevalue="--do-not-scale" checked="false" label="Skip scaling" help="By default data is scaled, with this option you can skip scaling."/>
        <param name="scale_max" argument="--scale-max" optional="true" type="float" label="Scale maximum" help = "Max value to return for scaled data. The default is 10. Setting this can help reduce the effects of genes that are only expressed in a very small number of cells. If regressing out latent variables and using a non-linear model, the default is 50."/>
        <param name="block_size" argument="--block-size" optional="true" type="integer" label="Block size" help = "Default size for number of genes to scale at in a single computation. Increasing block.size may speed up calculations but at an additional memory cost. Defaults to 1000 if not specified."/>
        <param name="min_cells_to_block" argument="--min-cells-to-block" optional="true" type="integer" label="Minimum number of cells to block" help="If object contains fewer than this number of cells, don't block for scaling calculations. Defaults to 1000."/>
        <param name="check_for_norm" argument="--check-for-norm" optional="true" type="boolean" falsevalue="--check-for-norm FALSE" truevalue="" label="Check that data is normalized" help="Check to see if data has been normalized, if not, output a warning (TRUE by default). Data can be normalised by Seurat normalise module."/>
    </inputs>

    <outputs>
      <expand macro="output_files"/>
    </outputs>

    <tests>
        <test>
            <param name="rds_seurat_file" ftype="rdata" value="E-MTAB-6077-3k_features_90_cells-fvg.rds"/>
            <param name="vars_to_regress" value="nCount_RNA" />
            <param name="use_umi" value="True" />
            <output name="rds_seurat_file" ftype="rdata">
              <assert_contents>
                <has_size value="4233990" delta="200000"/>
              </assert_contents>
            </output>
        </test>
    </tests>
    <help><![CDATA[
.. class:: infomark

**What it does**

This tool regresses out variables in a Seurat object to mitigate the effect of confounding factors.

@SEURAT_INTRO@

-----

**Inputs**

    * Seurat RDS object, probably normalised.
    * Genes to use. A file with a vector of gene names to scale/center (one gene per line). Default is all genes in object@data.
    * Variables to regress
    * Statistical model to use.
    * Use UMIs (boolean)
    * Do centering (boolean)
    * Scale maximum
    * Block size
    * Minimum number of cells to block
    * Check that data is normalised

-----

**Outputs**

    * Seurat RDS object, scaled.

.. _Seurat: https://www.nature.com/articles/nbt.4096
.. _Satija Lab: https://satijalab.org/seurat/

@VERSION_HISTORY@
]]></help>
      <expand macro="citations" />
</tool>