Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add clustermap #13

Draft
wants to merge 3 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,4 +20,5 @@ singularity_container/
/.nextflow*
/work

.DS_STORE
*.DS_Store
tmp
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
__merge__: /src/api/comp_method_transcript_assignment.yaml

name: clustermap_transcript_assignment
label: "Clustermap Transcript Assignment"
summary: "Assign transcripts to cells based on the ClusterMap method from He et al. 2021"
description: "Clusters RNA transcripts using density peak clustering."
links:
documentation: "https://github.com/wanglab-broad/ClusterMap"
repository: "https://github.com/wanglab-broad/ClusterMap"
references:
doi: "10.1038/s41467-021-26044-x"

arguments:
- name: --transcripts_key
type: string
description: The key of the transcripts within the points of the spatial data
default: transcripts
- name: --coordinate_system
type: string
description: The key of the pixel space coordinate system within the spatial data
default: global

- name: window_size
type: integer
required: false
description: "# small values to keep memory usage low, too small will lead to bad segmentations though"
direction: input
default: 700

- name: use_dapi
type: boolean
required: false
description: "Whether to use the DAPI segmentation channel for clustermap"
direction: input
default: True

- name: xy_radius
type: integer
required: false
description: "?"
direction: input
default: 40

- name: z_radius
type: integer
required: false
description: "?"
direction: input
default: 0

- name: fast_preprocess
type: boolean
required: false
description: "?"
direction: input
default: False

- name: gauss_blur
type: boolean
required: false
description: "Whether to apply gaussian blur to the DAPI image"
direction: input
default: True

- name: sigma
type: double
required: false
description: "Sigma parameter for for gaussian blur"
direction: input
default: 1

- name: pct_filter
type: double
required: false
description: "Percent of transcripts to filter out. For example, pct_filter=0.1 will remove at 10% of transcripts"
direction: input
default: 0.0

- name: LOF
type: boolean
required: false
description: "preprocess?"
direction: input
default: False

- name: contamination
type: double
required: false
description: "?"
direction: input
default: 0

- name: min_spot_per_cell
type: integer
required: false
description: "Minimum transcripts per cell"
direction: input
default: 5

- name: add_dapi
type: boolean
required: false
description: "?"
direction: input
default: True

- name: use_genedis
type: boolean
required: false
description: "?"
direction: input
default: True

- name: dapi_grid_interval
type: integer
required: false
description: "?"
direction: input
default: 5

- name: cell_num_threshold
type: double
required: false
description: "A threshold for deciding the number of cells. A larger value gives more cells"
direction: input
default: 0.1

resources:
- type: python_script
path: script.py

engines:
- type: docker
image: openproblems/base_python:1.0.0
__merge__:
- /src/base/setup_spatialdata_partial.yaml
setup:
- type: python
pypi: [anndata, PyYAML, imagecodecs, fastdist, h5py, imageio, natsort, networkx, opencv-python, pynndescent, pywavelets, scanpy, scikit-image, sinfo, stdlib-list, tifffile, tqdm, umap-learn, xlrd]
github: [wanglab-broad/ClusterMap]
- type: native

runners:
- type: executable
- type: nextflow
directives:
label: [ midtime, midcpu, midmem ]
Loading
Loading