Files
usher-exploring/pyproject.toml
gbanyan ba2f97ac55 feat(04-02): implement QC checks for scoring results
- Add scipy>=1.14 dependency for MAD-based outlier detection
- Create quality_control.py with 4 QC functions
- compute_missing_data_rates: NULL rate detection with warn/error thresholds
- compute_distribution_stats: mean/median/std per layer with anomaly detection
- detect_outliers: MAD-based robust outlier detection (>3 MAD)
- run_qc_checks: orchestrator with composite score percentiles
2026-02-11 20:46:57 +08:00

63 lines
1.4 KiB
TOML

[build-system]
requires = ["setuptools>=61.0", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "usher-pipeline"
version = "0.1.0"
description = "Reproducible pipeline for discovering under-studied cilia/Usher candidate genes"
requires-python = ">=3.11"
authors = [
{name = "Research Team"}
]
readme = "README.md"
license = {text = "MIT"}
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Scientific/Engineering :: Bio-Informatics",
]
dependencies = [
"mygene>=3.2.0",
"requests>=2.31.0",
"requests-cache>=1.1.0",
"tenacity>=8.2.0",
"pydantic>=2.0",
"pydantic-yaml>=1.2.0",
"duckdb>=0.9.0",
"click>=8.1.0",
"polars>=0.19.0",
"pyarrow>=14.0.0",
"pyyaml>=6.0",
"httpx>=0.28",
"structlog>=25.0",
"biopython>=1.84",
"scipy>=1.14",
]
[project.optional-dependencies]
dev = [
"pytest>=7.4.0",
"pytest-cov>=4.1.0",
]
expression = [
"cellxgene-census>=1.19",
]
[project.scripts]
usher-pipeline = "usher_pipeline.cli.main:cli"
[tool.setuptools]
packages = ["usher_pipeline"]
package-dir = {"" = "src"}
[tool.pytest.ini_options]
testpaths = ["tests"]
python_files = ["test_*.py"]
python_functions = ["test_*"]
addopts = "-v --strict-markers"