gengeneeval 0.1.0__tar.gz → 0.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/PKG-INFO +1 -1
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/pyproject.toml +1 -1
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/__init__.py +1 -1
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/metrics/metrics.py +18 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/visualization/visualizer.py +5 -1
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/LICENSE +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/README.md +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/cli.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/config.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/core.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/data/__init__.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/data/gene_expression_datamodule.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/data/loader.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/evaluator.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/evaluators/__init__.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/evaluators/base_evaluator.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/evaluators/gene_expression_evaluator.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/metrics/__init__.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/metrics/base_metric.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/metrics/correlation.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/metrics/distances.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/models/__init__.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/models/base_model.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/results.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/testing.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/utils/__init__.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/utils/io.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/utils/preprocessing.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/visualization/__init__.py +0 -0
- {gengeneeval-0.1.0 → gengeneeval-0.1.1}/src/geneval/visualization/plots.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gengeneeval
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.1
|
|
4
4
|
Summary: Comprehensive evaluation of generated gene expression data. Computes metrics between real and generated datasets with support for condition matching, train/test splits, and publication-quality visualizations.
|
|
5
5
|
License: MIT
|
|
6
6
|
License-File: LICENSE
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "gengeneeval"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.1"
|
|
4
4
|
description = "Comprehensive evaluation of generated gene expression data. Computes metrics between real and generated datasets with support for condition matching, train/test splits, and publication-quality visualizations."
|
|
5
5
|
authors = ["GenEval Team <geneval@example.com>"]
|
|
6
6
|
license = "MIT"
|
|
@@ -7,6 +7,24 @@ from scipy.stats import pearsonr, spearmanr
|
|
|
7
7
|
import torch
|
|
8
8
|
from . import metric_MMD
|
|
9
9
|
|
|
10
|
+
|
|
11
|
+
def scanpy_preprocessing(adata: ad.AnnData) -> ad.AnnData:
|
|
12
|
+
"""Apply standard scanpy preprocessing."""
|
|
13
|
+
adata = adata.copy()
|
|
14
|
+
sc.pp.normalize_total(adata, target_sum=1e4)
|
|
15
|
+
sc.pp.log1p(adata)
|
|
16
|
+
return adata
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
def scanpy_pca(adata: ad.AnnData, n_comps: int = 50) -> ad.AnnData:
|
|
20
|
+
"""Compute PCA on AnnData object."""
|
|
21
|
+
adata = adata.copy()
|
|
22
|
+
if adata.n_vars > 2000:
|
|
23
|
+
sc.pp.highly_variable_genes(adata, n_top_genes=2000, flavor='seurat_v3', subset=True)
|
|
24
|
+
sc.tl.pca(adata, n_comps=min(n_comps, adata.n_vars - 1, adata.n_obs - 1))
|
|
25
|
+
return adata
|
|
26
|
+
|
|
27
|
+
|
|
10
28
|
class Metric():
|
|
11
29
|
def __init__(self, name: str, fn):
|
|
12
30
|
self.name = name
|
|
@@ -10,12 +10,16 @@ Provides publication-quality plots for evaluation results:
|
|
|
10
10
|
"""
|
|
11
11
|
from __future__ import annotations
|
|
12
12
|
|
|
13
|
-
from typing import Dict, List, Optional, Tuple, Union, Any
|
|
13
|
+
from typing import Dict, List, Optional, Tuple, Union, Any, TYPE_CHECKING
|
|
14
14
|
from pathlib import Path
|
|
15
15
|
import numpy as np
|
|
16
16
|
import pandas as pd
|
|
17
17
|
import warnings
|
|
18
18
|
|
|
19
|
+
if TYPE_CHECKING:
|
|
20
|
+
from geneval.results import EvaluationResult
|
|
21
|
+
from geneval.data.loader import GeneExpressionDataLoader
|
|
22
|
+
|
|
19
23
|
try:
|
|
20
24
|
import matplotlib.pyplot as plt
|
|
21
25
|
import matplotlib.patches as mpatches
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|