zmap-tools 0.2.2.2__tar.gz → 0.2.2.3__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.
Files changed (46) hide show
  1. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/PKG-INFO +19 -15
  2. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/pyproject.toml +25 -15
  3. zmap_tools-0.2.2.3/src/zmap/__init__.py +76 -0
  4. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap/predict/__init__.py +49 -0
  5. zmap_tools-0.2.2.3/src/zmap/predict/baseline2.py +1975 -0
  6. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/matrix/A_ref_based_3d_weight_matrix_softSpecificityAllcells_timeblockBg_stageEq_full251209_excl_blast_unassigned_expr0p25_pct10_tau1_top1bonus1p5_shrinkM50P50_4term/all_gene_weight_by_celltype_stage_rank_by_weight_mean1_desc_only_MODULE_COMPARABLE_ZEROLOCK.csv +4 -0
  7. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/output/baseline2_zscore_job1148438/label_encoder.joblib +0 -0
  8. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/output/baseline2_zscore_job1148438/mlp_model.pt +0 -0
  9. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/output/baseline2_zscore_job1148438/mlp_scaler.joblib +0 -0
  10. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/output/baseline2_zscore_job1148438/module_input_scale_mean.npy +0 -0
  11. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/output/baseline2_zscore_job1148438/module_input_scale_std.npy +0 -0
  12. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/output/baseline2_zscore_job1148438/run_config.json +54 -0
  13. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/script/benchmark_independent_encoder_marker_hvg.py +858 -0
  14. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/script/train_celltype_torch_mlp_lgbxt_ensemble.py +791 -0
  15. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/script/train_encoder_ensembly.py +3839 -0
  16. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2/script/train_time_weighted_module_encoder_mlp.py +667 -0
  17. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2_tissue/matrix/A_ref_based_3d_weight_matrix_softSpecificityAllcells_timeblockBg_stageEq_full251209_ZMAP_Tissue_excl_blast_unassigned_expr0p25_pct10_tau1_top1bonus1p5_shrinkM50P50_4term/all_gene_weight_by_tissue_stage_rank_by_weight_mean1_desc_only_MODULE_COMPARABLE_ZEROLOCK.csv +4 -0
  18. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2_tissue/output/baseline2_tissue_zscore_job1149526/label_encoder.joblib +0 -0
  19. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2_tissue/output/baseline2_tissue_zscore_job1149526/mlp_model.pt +0 -0
  20. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2_tissue/output/baseline2_tissue_zscore_job1149526/mlp_scaler.joblib +0 -0
  21. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2_tissue/output/baseline2_tissue_zscore_job1149526/module_input_scale_mean.npy +0 -0
  22. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2_tissue/output/baseline2_tissue_zscore_job1149526/module_input_scale_std.npy +0 -0
  23. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/baseline2_tissue/output/baseline2_tissue_zscore_job1149526/run_config.json +54 -0
  24. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/shared/encoder/xpca_harmony_260103_no_unassigned_blastomere_res1_wd1e4_coral0p05/model/config.json +97 -0
  25. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/shared/encoder/xpca_harmony_260103_no_unassigned_blastomere_res1_wd1e4_coral0p05/model/encoder.pt +0 -0
  26. zmap_tools-0.2.2.3/src/zmap/predict/baseline2_file/shared/time_model/timeid_hvg_logreg_stage_model.joblib +0 -0
  27. zmap_tools-0.2.2.3/src/zmap/predict/encoder_pipeline.py +3649 -0
  28. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap_tools.egg-info/PKG-INFO +19 -15
  29. zmap_tools-0.2.2.3/src/zmap_tools.egg-info/SOURCES.txt +41 -0
  30. zmap_tools-0.2.2.3/src/zmap_tools.egg-info/requires.txt +20 -0
  31. zmap_tools-0.2.2.2/src/zmap/__init__.py +0 -36
  32. zmap_tools-0.2.2.2/src/zmap_tools.egg-info/SOURCES.txt +0 -18
  33. zmap_tools-0.2.2.2/src/zmap_tools.egg-info/requires.txt +0 -17
  34. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/LICENSE +0 -0
  35. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/README.md +0 -0
  36. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/setup.cfg +0 -0
  37. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap/dotplot/__init__.py +0 -0
  38. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap/dotplot/dotplot_gene.py +0 -0
  39. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap/dotplot/dotplot_group.py +0 -0
  40. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap/predict/knn_backend.py +0 -0
  41. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap/predict/predict.py +0 -0
  42. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap/reference/__init__.py +0 -0
  43. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap/reference/load_h5ad.py +0 -0
  44. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap/reference/markers.py +0 -0
  45. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap_tools.egg-info/dependency_links.txt +0 -0
  46. {zmap_tools-0.2.2.2 → zmap_tools-0.2.2.3}/src/zmap_tools.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: zmap-tools
3
- Version: 0.2.2.2
3
+ Version: 0.2.2.3
4
4
  Summary: API for working with ZMAP (Zebrafish Multi-Atlas Project)
5
5
  Author-email: Daniel Wagner <Daniel.Wagner@ucsf.edu>
6
6
  License: BSD 3-Clause License
@@ -44,26 +44,30 @@ Classifier: Programming Language :: Python :: 3
44
44
  Classifier: Programming Language :: Python :: 3.10
45
45
  Classifier: Programming Language :: Python :: 3.11
46
46
  Classifier: Programming Language :: Python :: 3.12
47
+ Classifier: Programming Language :: Python :: 3.13
47
48
  Requires-Python: >=3.10
48
49
  Description-Content-Type: text/markdown
49
50
  License-File: LICENSE
50
- Requires-Dist: anndata==0.12.18
51
- Requires-Dist: scanpy==1.12.1
52
- Requires-Dist: numpy==2.0.2
53
- Requires-Dist: numba==0.60.0
54
- Requires-Dist: llvmlite==0.43.0
55
- Requires-Dist: pandas<3.0,>=2.0
56
- Requires-Dist: matplotlib<4.0,>=3.7
51
+ Requires-Dist: anndata<0.14,>=0.12.18
52
+ Requires-Dist: scanpy<1.13,>=1.12.1
53
+ Requires-Dist: numpy<3,>=2.1
54
+ Requires-Dist: numba>=0.64
55
+ Requires-Dist: pandas<3,>=2.2
56
+ Requires-Dist: matplotlib<4,>=3.7
57
57
  Requires-Dist: requests>=2.31
58
- Requires-Dist: scipy==1.16.3
59
- Requires-Dist: scikit-learn==1.6.1
60
- Requires-Dist: faiss-cpu==1.14.3
61
- Requires-Dist: seaborn==0.13.2
58
+ Requires-Dist: scipy<2,>=1.15
59
+ Requires-Dist: scikit-learn<2,>=1.6
60
+ Requires-Dist: faiss-cpu<2,>=1.14.3
61
+ Requires-Dist: seaborn<0.14,>=0.13.2
62
62
  Requires-Dist: tqdm>=4.66
63
63
  Requires-Dist: adjustText>=0.8
64
- Requires-Dist: symphonypy==0.2.4
65
- Requires-Dist: igraph==1.0.0
66
- Requires-Dist: leidenalg==0.12.0
64
+ Requires-Dist: symphonypy<0.3,>=0.2.4
65
+ Requires-Dist: igraph<2,>=1.0
66
+ Requires-Dist: leidenalg<0.13,>=0.12
67
+ Requires-Dist: joblib>=1.3
68
+ Requires-Dist: h5py>=3.0
69
+ Requires-Dist: torch>=2.0
70
+ Requires-Dist: lightgbm>=4.0
67
71
  Dynamic: license-file
68
72
 
69
73
  # zmap-tools
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "zmap-tools"
7
- version = "0.2.2.2"
7
+ version = "0.2.2.3"
8
8
  description = "API for working with ZMAP (Zebrafish Multi-Atlas Project)"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -24,28 +24,32 @@ classifiers = [
24
24
  "Programming Language :: Python :: 3.10",
25
25
  "Programming Language :: Python :: 3.11",
26
26
  "Programming Language :: Python :: 3.12",
27
+ "Programming Language :: Python :: 3.13",
27
28
  ]
28
29
 
29
30
  dependencies = [
30
- "anndata==0.12.18",
31
- "scanpy==1.12.1",
31
+ "anndata>=0.12.18,<0.14",
32
+ "scanpy>=1.12.1,<1.13",
32
33
 
33
- "numpy==2.0.2",
34
- "numba==0.60.0",
35
- "llvmlite==0.43.0",
34
+ "numpy>=2.1,<3",
35
+ "numba>=0.64",
36
36
 
37
- "pandas>=2.0,<3.0",
38
- "matplotlib>=3.7,<4.0",
37
+ "pandas>=2.2,<3",
38
+ "matplotlib>=3.7,<4",
39
39
  "requests>=2.31",
40
- "scipy==1.16.3",
41
- "scikit-learn==1.6.1",
42
- "faiss-cpu==1.14.3",
43
- "seaborn==0.13.2",
40
+ "scipy>=1.15,<2",
41
+ "scikit-learn>=1.6,<2",
42
+ "faiss-cpu>=1.14.3,<2",
43
+ "seaborn>=0.13.2,<0.14",
44
44
  "tqdm>=4.66",
45
45
  "adjustText>=0.8",
46
- "symphonypy==0.2.4",
47
- "igraph==1.0.0",
48
- "leidenalg==0.12.0",
46
+ "symphonypy>=0.2.4,<0.3",
47
+ "igraph>=1.0,<2",
48
+ "leidenalg>=0.12,<0.13",
49
+ "joblib>=1.3",
50
+ "h5py>=3.0",
51
+ "torch>=2.0",
52
+ "lightgbm>=4.0",
49
53
  ]
50
54
 
51
55
  [project.urls]
@@ -55,6 +59,12 @@ Issues = "https://github.com/WagnerLabUCSF/zmap-tools/issues"
55
59
 
56
60
  [tool.setuptools]
57
61
  package-dir = {"" = "src"}
62
+ include-package-data = true
58
63
 
59
64
  [tool.setuptools.packages.find]
60
65
  where = ["src"]
66
+
67
+ [tool.setuptools.package-data]
68
+ zmap = [
69
+ "predict/baseline2_file/**/*",
70
+ ]
@@ -0,0 +1,76 @@
1
+ from __future__ import annotations
2
+
3
+ """
4
+ zmap-tools — Python API for the Zebrafish Multi-Atlas Project (ZMAP).
5
+
6
+ A curated single-cell RNA-seq reference atlas for zebrafish development,
7
+ with tools for reference loading, label transfer, and visualization.
8
+
9
+ Submodules
10
+ ----------
11
+ reference (aliased as ref)
12
+ Download, cache, and load ZMAP reference H5ADs and consensus markers.
13
+ predict
14
+ kNN-based label transfer from the ZMAP reference to query datasets.
15
+ dotplot
16
+ Publication-ready dotplot visualization of gene expression patterns.
17
+ """
18
+
19
+ from importlib.metadata import PackageNotFoundError, version as _version
20
+
21
+ # Package version (from the PyPI/dist name)
22
+ try:
23
+ __version__ = _version("zmap-tools")
24
+ except PackageNotFoundError:
25
+ __version__ = "0.0.0"
26
+
27
+ # Import subpackages as attributes
28
+ from . import reference # zmap.reference
29
+ from . import dotplot # zmap.dotplot
30
+ from . import predict # zmap.predict
31
+
32
+ # Scanpy-style aliases:
33
+ ref = reference
34
+
35
+ # Top-level convenience APIs for biological module / baseline2 workflows.
36
+ apply_encoder = predict.apply_encoder
37
+ zmap_projection = predict.zmap_projection
38
+ predict_pseudo_tissue = predict.predict_pseudo_tissue
39
+ knn_config = predict.knn_config
40
+ time_prediction_KNN = predict.time_prediction_KNN
41
+ time_prediction_MLP = predict.time_prediction_MLP
42
+ predict_labels_MLP = predict.predict_labels_MLP
43
+ predict_labels_mlp = predict.predict_labels_mlp
44
+ predict_labels_baseline2 = predict.predict_labels_baseline2
45
+ predict_labels_baseline_tissue = predict.predict_labels_baseline_tissue
46
+ baseline2 = predict.baseline2
47
+ baseline_tissue = predict.baseline_tissue
48
+ plot_conf_entropy_margin = predict.plot_conf_entropy_margin
49
+ plot_pseudo_tissue_conf_entropy_margin = predict.plot_pseudo_tissue_conf_entropy_margin
50
+ plot_confusion_matrix = predict.plot_confusion_matrix
51
+ report_leiden_celltype_topk = predict.report_leiden_celltype_topk
52
+ plot_leiden_celltype = predict.plot_leiden_celltype
53
+ plot_projection_celltype_overlay = predict.plot_projection_celltype_overlay
54
+
55
+ __all__ = ["__version__", "ref", "dotplot", "predict"]
56
+
57
+ __all__ += [
58
+ "apply_encoder",
59
+ "zmap_projection",
60
+ "predict_pseudo_tissue",
61
+ "knn_config",
62
+ "time_prediction_KNN",
63
+ "time_prediction_MLP",
64
+ "predict_labels_MLP",
65
+ "predict_labels_mlp",
66
+ "predict_labels_baseline2",
67
+ "predict_labels_baseline_tissue",
68
+ "baseline2",
69
+ "baseline_tissue",
70
+ "plot_conf_entropy_margin",
71
+ "plot_pseudo_tissue_conf_entropy_margin",
72
+ "plot_confusion_matrix",
73
+ "report_leiden_celltype_topk",
74
+ "plot_leiden_celltype",
75
+ "plot_projection_celltype_overlay",
76
+ ]
@@ -33,6 +33,31 @@ from .predict import (
33
33
  validate_markers,
34
34
  plot_marker_comparison,
35
35
  )
36
+ from .encoder_pipeline import (
37
+ apply_encoder,
38
+ zmap_projection,
39
+ predict_pseudo_tissue,
40
+ knn_config,
41
+ build_module_faiss,
42
+ build_module_concat_reference,
43
+ apply_module_concat_query,
44
+ time_prediction_KNN,
45
+ plot_conf_entropy_margin,
46
+ plot_pseudo_tissue_conf_entropy_margin,
47
+ plot_confusion_matrix,
48
+ report_leiden_celltype_topk,
49
+ plot_leiden_celltype,
50
+ plot_projection_celltype_overlay,
51
+ )
52
+ from .baseline2 import (
53
+ predict_labels_MLP,
54
+ predict_labels_mlp,
55
+ predict_labels_baseline2,
56
+ predict_labels_baseline_tissue,
57
+ time_prediction_MLP,
58
+ baseline2,
59
+ baseline_tissue,
60
+ )
36
61
 
37
62
  __all__ = [
38
63
  "preprocess_adata_query",
@@ -55,3 +80,27 @@ __all__ = [
55
80
  "validate_markers",
56
81
  "plot_marker_comparison",
57
82
  ]
83
+
84
+ __all__ += [
85
+ "apply_encoder",
86
+ "zmap_projection",
87
+ "predict_pseudo_tissue",
88
+ "knn_config",
89
+ "build_module_faiss",
90
+ "build_module_concat_reference",
91
+ "apply_module_concat_query",
92
+ "time_prediction_KNN",
93
+ "plot_conf_entropy_margin",
94
+ "plot_pseudo_tissue_conf_entropy_margin",
95
+ "plot_confusion_matrix",
96
+ "report_leiden_celltype_topk",
97
+ "plot_leiden_celltype",
98
+ "plot_projection_celltype_overlay",
99
+ "predict_labels_MLP",
100
+ "predict_labels_mlp",
101
+ "predict_labels_baseline2",
102
+ "predict_labels_baseline_tissue",
103
+ "time_prediction_MLP",
104
+ "baseline2",
105
+ "baseline_tissue",
106
+ ]