view scHicClusterMinHash.xml @ 1:68648299ffc4 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/schicexplorer commit 72e1e90ac05a32dbd6fc675073429c0086048b18"
author iuc
date Tue, 10 Mar 2020 15:11:23 -0400
parents 1c2e79e9311a
children 3048283ee054
line wrap: on
line source

<tool id="schicexplorer_schicclusterminhash" name="@BINARY@" version="@WRAPPER_VERSION@.0">
    <description>clusters single-cell Hi-C interaction matrices with MinHash dimension reduction</description>
    <macros>
        <token name="@BINARY@">scHicClusterMinHash</token>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements" />
    <command detect_errors="exit_code"><![CDATA[
        @BINARY@

        --matrix '$matrix_scooler'

        --numberOfClusters $numberOfClusters

        --clusterMethod $clusterMethod_selector
        --numberOfHashFunctions $numberOfHashFunctions
        #if $chromosomes:
            #set $chromosome = ' '.join([ '\'%s\'' % $chrom for $chrom in str($chromosomes).split(' ') ])
            --chromosomes $chromosome
        #end if

        #if $exactModeMinhash:
            $exactModeMinhash
        #end if

        --outFileName cluster_list.txt
        --numberOfNearestNeighbors $numberOfNearestNeighbors

        --threads @THREADS@



    ]]></command>
    <inputs>
        
        <expand macro="matrix_scooler_macro"/>
        <param name="clusterMethod_selector" type="select" label="Cluster method:">
                <option value="kmeans" selected="True">K-means</option>
                <option value="spectral" >Spectral clustering</option>
        </param>

        <param name="numberOfClusters" type="integer" value="7"  label="Number of clusters" help='How many clusters should be computed by kmeans or spectral clustering' />   
        <param name="numberOfHashFunctions" type="integer" value="800"  label="Number of hash functions" help='How many hash functions the minHash algorithm uses.' />   
        <param name="numberOfNearestNeighbors" type="integer" value="100"  label="Number of nearest neighbors" help='How many nearest neighbors should be computed for the k-nn graph?' />   

        <param name='chromosomes' type='text' label='List of chromosomes to consider' help='Please separate the chromosomes by space'/>
        <param name='exactModeMinhash' type='boolean' truevalue='--exactModeMinHash' label='The MinHash algorithm computes additional the exact euclidean distance.'/>

    </inputs>
    <outputs>
        <data name="outFileName" from_work_dir="cluster_list.txt" format="txt" label="${tool.name} on ${on_string}: Cluster results"/>
    </outputs>
    <tests>
        <test>
            <param name='matrix_scooler' value='test_matrix.scool' />
            <param name='clusterMethod_selector' value='kmeans' />
            <param name='numberOfClusters' value='3' />
            <param name='numberOfHashFunctions' value='800' />

            <output name="outFileName" file="scHicClusterMinHash/cluster_kmeans.txt" ftype="txt" compare="sim_size" delta="4000"/>
        </test>
        <test>
            <param name='matrix_scooler' value='test_matrix.scool' />
            <param name='clusterMethod_selector' value='spectral' />
            <param name='numberOfClusters' value='3' />
            <param name='numberOfHashFunctions' value='800' />

            <output name="outFileName" file="scHicClusterMinHash/cluster_spectral.txt" ftype="txt" compare="sim_size" delta="4000"/>
        </test>
        <test>
            <param name='matrix_scooler' value='test_matrix.scool' />
            <param name='clusterMethod_selector' value='kmeans' />
            <param name='numberOfClusters' value='3' />
            <param name='numberOfHashFunctions' value='800' />
            <param name='exactModeMinhash' value='true' />
            
            <output name="outFileName" file="scHicClusterMinHash/cluster_kmeans_exact.txt" ftype="txt" compare="sim_size" delta="4000"/>
        </test>
        <test>
            <param name='matrix_scooler' value='test_matrix.scool' />
            <param name='clusterMethod_selector' value='spectral' />
            <param name='numberOfClusters' value='3' />
            <param name='numberOfHashFunctions' value='800' />
            <param name='chromosomes' value='chr1 chr2' />

            
            <output name="outFileName" file="scHicClusterMinHash/cluster_spectral_chromosomes.txt" ftype="txt" compare="sim_size" delta="4000"/>
        </test>

        
    </tests>
    <help><![CDATA[

Clustering with dimension reduction via MinHash
===============================================

scHicClusterMinHash uses kmeans or spectral clustering to associate each cell to a cluster and therefore to its cell cycle.
The clustering is applied on dimension reduced data based on an approximate kNN search with the local sensitive hashing technique MinHash. This approach reduces the number of dimensions from samples * (number of bins)^2 to samples * samples. 	The clustering is applied on dimension reduced data based on an approximate kNN search with the local sensitive hashing technique MinHash. This approach reduces the number of dimensions from samples * (number of bins)^2 to samples * samples.
Please consider also the other clustering and dimension reduction approaches of the scHicExplorer suite such as `scHicCluster`, `scHicClusterMinHash` and `scHicClusterSVL`. They can give you better results, 	Please consider also the other clustering and dimension reduction approaches of the scHicExplorer suite such as `scHicCluster`, `scHicClusterCompartments` and `scHicClusterSVL`. They can give you better results,
can be faster or less memory demanding.	can be faster or less memory demanding.

For more information about scHiCExplorer please consider our documentation on readthedocs.io_

.. _readthedocs.io: http://schicexplorer.readthedocs.io/
]]></help>
    <expand macro="citations" />

</tool>