wrappers/preprocessing/harmony_integrate
Description
Integrate observations over one or more batch/covariate columns using Harmony,
running either the GPU (rapids-singlecell) or the CPU (harmonypy) variant of
harmony_integrate, selected with --device_type.
Inputs
Name | Type & Properties | Description |
|---|---|---|
--input | file required | Input h5mu file. |
--modality | string | Which modality from the input MuData file to process. |
--obsm_input | string | Which .obsm slot to use as the PCA embedding to integrate (basis). |
--obs_covariates | string required multiple | The .obs columns to integrate over (the batch/covariate keys passed to Harmony). Provide one or more comma-separated column names. When multiple keys are provided, a combined batch variable is created from all columns. |
Compute
Name | Type & Properties | Description |
|---|---|---|
--device_type | string | Which implementation to run: the GPU (rapids-singlecell) variant or the CPU (scanpy/squidpy) variant of the component. Selecting `gpu` requires a CUDA-capable GPU; the component errors out if none is available (there is no automatic fallback to CPU). |
Outputs
Name | Type & Properties | Description |
|---|---|---|
--output | file required output | Output h5mu file containing the integrated embedding. |
--obsm_output | string | In which .obsm slot to store the Harmony-corrected embedding. |
--output_compression | string | Compression format to use for the output AnnData and/or Mudata objects. By default no compression is applied. |
Options
Name | Type & Properties | Description |
|---|---|---|
--theta | double multiple | Diversity clustering penalty parameter. theta=0 does not encourage any diversity; larger values result in more aggressive diversity-encouraging correction over the covariates. Provide a single value for all covariates, or one value per --obs_covariates entry. |
rapids-singlecell options
Name | Type & Properties | Description |
|---|---|---|
--overwrite | boolean | Allow overwriting the .obsm output slot if it already exists. |
--flavor | string | Which Harmony implementation to use. 'harmony2' is the faster reimplementation; 'harmony1' reproduces the original algorithm. |
--n_clusters | integer | Number of clusters used by Harmony. If not set, the value is chosen automatically. |
--max_iter_harmony | integer | Maximum number of rounds to run Harmony. |
--random_state | integer | A random seed. |
Run this component
Run the following command to execute this component with Nextflow:
cat > params.yaml <<'EOM'
modality: [ "rna" ]
obsm_input: [ "X_pca" ]
device_type: [ "gpu" ]
output: "$id.$key.output.h5mu"
obsm_output: [ "X_pca_integrated" ]
theta: [ 2 ]
overwrite: [ false ]
flavor: [ "harmony2" ]
max_iter_harmony: [ 10 ]
random_state: [ 0 ]
id: "run"
publish_dir: "output/"
EOM
nextflow run https://packages.viash-hub.com/vsh/openpipeline_rapids.git \
-revision v0.1.3 \
-main-script target/nextflow/wrappers/preprocessing/harmony_integrate/main.nf \
-params-file params.yaml Relationships
Used by
0 relationships
No components use this component.
Current component
wrappers/preprocessing/harmony_integrateopenpipeline_rapids v0.1.3