File size: 737 Bytes
9d901ad | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | """Tests for variance decomposition."""
import numpy as np
import pytest
def test_variance_decomposition(preprocessed_adata):
import scptr
scptr.tl.estimate_beta(preprocessed_adata)
scptr.tl.estimate_gamma(preprocessed_adata)
scptr.tl.variance_decomposition(preprocessed_adata)
assert "tf_score" in preprocessed_adata.var.columns
assert "ptf_score" in preprocessed_adata.var.columns
tf = preprocessed_adata.var["tf_score"].values
ptf = preprocessed_adata.var["ptf_score"].values
# TF + PTF should sum to ~1
np.testing.assert_allclose(tf + ptf, 1.0, atol=1e-5)
# Scores should be in [0, 1]
assert np.all(tf >= 0) and np.all(tf <= 1)
assert np.all(ptf >= 0) and np.all(ptf <= 1)
|