Skip to content

Conversation

@pavanvidem
Copy link
Member

@pavanvidem pavanvidem commented Oct 30, 2025

FOR CONTRIBUTOR:

  • I have read the CONTRIBUTING.md document and this tool is appropriate for the tools-iuc repo.
  • License permits unrestricted use (educational + commercial)
  • This PR adds a new tool or tool collection
  • This PR updates an existing tool or tool collection
  • This PR does something else (explain below)

@bernt-matthias bernt-matthias changed the title Add CellTypist tool for automated celltye annotation Add CellTypist tool for automated celltype annotation Oct 30, 2025
<param name="prediction" type="text" label="Prediction column in AnnData.obs for dotplot" value="predicted_labels" />
</inputs>
<outputs>
<data name="anndata_out" format="h5ad" label="${tool.name} on ${on_string}: AnnData with celltype annotations" />
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No label needed if there is only one output.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Intially, I implemented an option to create a dotplot of probabilities per predicted type over some existing annotation. But this is not very useful. Removed it.

<requirement type="package" version="@TOOL_VERSION@">celltypist</requirement>
</requirements>
<command><![CDATA[
cp '$adata' 'anndata.h5ad' &&
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is the copy needed?

import celltypist
from celltypist import models

adata = sc.read_h5ad('anndata.h5ad') models.download_models(models='$model_name', cache_dir='./celltypist_models_cache')
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
adata = sc.read_h5ad('anndata.h5ad') models.download_models(models='$model_name', cache_dir='./celltypist_models_cache')
adata = sc.read_h5ad('$adata')
models.download_models(models='$model_name', cache_dir='./celltypist_models_cache')

<option value="prob match">Enable a multi-label classification utilising a probability threshold</option>
</param>
<param name="p_thres" type="float" label="Probability threshold" value="0.5" />
<param name="min_prop" type="float" label="Minimum proportion for cell type assignment" value="0.05" />
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

min/max

<param name="p_thres" type="float" label="Probability threshold" value="0.5" />
<param name="min_prop" type="float" label="Minimum proportion for cell type assignment" value="0.05" />
<param name="reference" type="text" label="Reference column in AnnData.obs for dotplot" value="cell_type" />
<param name="prediction" type="text" label="Prediction column in AnnData.obs for dotplot" value="predicted_labels" />
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

are empty_field validators needed for the text inputs?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants