Beispiel #1
0
def test_pca__raise_on_incompatible_chunking(sample_dataset):
    ds = sample_dataset.assign(call_alternate_allele_count=lambda ds: ds[
        "call_alternate_allele_count"].chunk((2, 2)))
    with pytest.raises(
            ValueError,
            match=
            "PCA can only be performed on arrays chunked in 2 dimensions if algorithm='randomized'",
    ):
        pca.pca_est(ds, n_components=2, algorithm="tsqr")
Beispiel #2
0
def test_pca__raise_on_invalid_algorithm(sample_dataset):
    with pytest.raises(
        ValueError, match=r"`algorithm` must be one of \['tsqr', 'randomized'\]"
    ):
        pca.pca_est(sample_dataset, n_components=2, algorithm="unknown")  # type: ignore[arg-type]
Beispiel #3
0
def test_pca__raise_on_invalid_scaler(sample_dataset):
    with pytest.raises(ValueError, match="Only 'patterson' scaler currently supported"):
        pca.pca_est(sample_dataset, n_components=2, scaler="unknown")
Beispiel #4
0
def test_pca__raise_on_no_ploidy(sample_dataset):
    with pytest.raises(ValueError, match="`ploidy` must be specified explicitly"):
        pca.pca_est(sample_dataset.drop_dims("ploidy"), n_components=2, ploidy=None)