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

[pre-commit.ci] pre-commit autoupdate #14

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
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
16 changes: 8 additions & 8 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,20 @@ fail_fast: false
default_language_version:
python: python3
default_stages:
- commit
- push
- pre-commit
- pre-push
minimum_pre_commit_version: 2.16.0
repos:
- repo: https://github.com/psf/black
rev: "23.1.0"
rev: "24.10.0"
hooks:
- id: black
- repo: https://github.com/asottile/blacken-docs
rev: 1.13.0
rev: 1.19.1
hooks:
- id: blacken-docs
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v3.0.0-alpha.6
rev: v4.0.0-alpha.8
hooks:
- id: prettier
# Newer versions of node don't work on systems that have an older version of GLIBC
Expand All @@ -24,13 +24,13 @@ repos:
# See https://github.com/scverse/cookiecutter-scverse/issues/143 and
# https://github.com/jupyterlab/jupyterlab/issues/12675
language_version: "17.9.1"
- repo: https://github.com/charliermarsh/ruff-pre-commit
rev: v0.0.254
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.8.3
hooks:
- id: ruff
args: [--fix, --exit-non-zero-on-fix]
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.4.0
rev: v5.0.0
hooks:
- id: detect-private-key
- id: check-ast
Expand Down
10 changes: 5 additions & 5 deletions docs/tutorial.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -507,7 +507,7 @@
],
"source": [
"sc.pl.umap(\n",
" adata, \n",
" adata,\n",
" color=\"directional_cosine_sim_variance\",\n",
" cmap=\"Greys\",\n",
" vmin=\"p1\",\n",
Expand Down Expand Up @@ -537,7 +537,7 @@
" extrapolated_cells_list = []\n",
" for i in track(range(n_samples)):\n",
" with io.StringIO() as buf, redirect_stdout(buf):\n",
" vkey = \"velocities_velovi_{i}\".format(i=i)\n",
" vkey = f\"velocities_velovi_{i}\"\n",
" v = vae.get_velocity(n_samples=1, velo_statistic=\"mean\")\n",
" adata.layers[vkey] = v\n",
" scv.tl.velocity_graph(adata, vkey=vkey, sqrt_transform=False, approx=True)\n",
Expand Down Expand Up @@ -1134,10 +1134,10 @@
],
"source": [
"sc.pl.umap(\n",
" adata, \n",
" adata,\n",
" color=\"directional_cosine_sim_variance_extrinisic\",\n",
" vmin=\"p1\", \n",
" vmax=\"p99\", \n",
" vmin=\"p1\",\n",
" vmax=\"p99\",\n",
")"
]
},
Expand Down
19 changes: 12 additions & 7 deletions velovi/_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ class VELOVI(VAEMixin, UnsupervisedTrainingMixin, BaseModelClass):
Use a linear decoder from latent space to time.
**model_kwargs
Keyword args for :class:`~velovi.VELOVAE`
"""

def __init__(
Expand Down Expand Up @@ -108,13 +109,8 @@ def __init__(
**model_kwargs,
)
self._model_summary_string = (
"VELOVI Model with the following params: \nn_hidden: {}, n_latent: {}, n_layers: {}, dropout_rate: "
"{}"
).format(
n_hidden,
n_latent,
n_layers,
dropout_rate,
f"VELOVI Model with the following params: \nn_hidden: {n_hidden}, n_latent: {n_latent}, n_layers: {n_layers}, dropout_rate: "
f"{dropout_rate}"
)
self.init_params_ = self._get_init_params(locals())

Expand Down Expand Up @@ -164,6 +160,7 @@ def train(
`train()` will overwrite values present in `plan_kwargs`, when appropriate.
**trainer_kwargs
Other keyword args for :class:`~scvi.train.Trainer`.
"""
user_plan_kwargs = plan_kwargs.copy() if isinstance(plan_kwargs, dict) else {}
plan_kwargs = {"lr": lr, "weight_decay": weight_decay, "optimizer": "AdamW"}
Expand Down Expand Up @@ -238,6 +235,7 @@ def get_state_assignment(
-------
If `n_samples` > 1 and `return_mean` is False, then the shape is `(samples, cells, genes)`.
Otherwise, shape is `(cells, genes)`. In this case, return type is :class:`~pandas.DataFrame` unless `return_numpy` is True.
"""
adata = self._validate_anndata(adata)
scdl = self._make_data_loader(
Expand Down Expand Up @@ -342,6 +340,7 @@ def get_latent_time(
-------
If `n_samples` > 1 and `return_mean` is False, then the shape is `(samples, cells, genes)`.
Otherwise, shape is `(cells, genes)`. In this case, return type is :class:`~pandas.DataFrame` unless `return_numpy` is True.
"""
adata = self._validate_anndata(adata)
if indices is None:
Expand Down Expand Up @@ -484,6 +483,7 @@ def get_velocity(
-------
If `n_samples` > 1 and `return_mean` is False, then the shape is `(samples, cells, genes)`.
Otherwise, shape is `(cells, genes)`. In this case, return type is :class:`~pandas.DataFrame` unless `return_numpy` is True.
"""
adata = self._validate_anndata(adata)
if indices is None:
Expand Down Expand Up @@ -658,6 +658,7 @@ def get_expression_fit(
-------
If `n_samples` > 1 and `return_mean` is False, then the shape is `(samples, cells, genes)`.
Otherwise, shape is `(cells, genes)`. In this case, return type is :class:`~pandas.DataFrame` unless `return_numpy` is True.
"""
adata = self._validate_anndata(adata)

Expand Down Expand Up @@ -813,6 +814,7 @@ def get_gene_likelihood(
-------
If `n_samples` > 1 and `return_mean` is False, then the shape is `(samples, cells, genes)`.
Otherwise, shape is `(cells, genes)`. In this case, return type is :class:`~pandas.DataFrame` unless `return_numpy` is True.
"""
adata = self._validate_anndata(adata)
scdl = self._make_data_loader(
Expand Down Expand Up @@ -919,6 +921,7 @@ def setup_anndata(
Returns
-------
%(returns)s
"""
setup_method_args = cls._get_setup_method_args(**locals())
anndata_fields = [
Expand Down Expand Up @@ -969,6 +972,7 @@ def get_permutation_scores(
-------
Tuple of DataFrame and AnnData. DataFrame is genes by cell types with score per cell type.
AnnData is the permutated version of the original AnnData.
"""
adata = self._validate_anndata(adata)
adata_manager = self.get_anndata_manager(adata)
Expand Down Expand Up @@ -1092,6 +1096,7 @@ def _directional_statistics_per_cell(
----------
tensor
Shape of samples by genes for a given cell.
"""
n_samples = tensor.shape[0]
# over samples axis
Expand Down
3 changes: 3 additions & 0 deletions velovi/_module.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Main module."""

from typing import Callable, Iterable, Literal, Optional

import numpy as np
Expand Down Expand Up @@ -44,6 +45,7 @@ class DecoderVELOVI(nn.Module):
Whether to use layer norm in layers
linear_decoder
Whether to use linear decoder for time
"""

def __init__(
Expand Down Expand Up @@ -183,6 +185,7 @@ class VELOVAE(BaseModuleClass):
var_activation
Callable used to ensure positivity of the variational distributions' variance.
When `None`, defaults to `torch.exp`.
"""

def __init__(
Expand Down
1 change: 1 addition & 0 deletions velovi/_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ def preprocess_data(
Returns
-------
Preprocessed adata.
"""
if min_max_scale:
scaler = MinMaxScaler()
Expand Down
Loading