8000 TST Extend tests for `scipy.sparse.*array` in `sklearn/tests/test_cal… · scikit-learn/scikit-learn@dafef82 · GitHub
[go: up one dir, main page]

Skip to content

Commit dafef82

Browse files
BHolmes92glemaitreOmarManzoor
authored
TST Extend tests for scipy.sparse.*array in sklearn/tests/test_calibration.py (#27257)
Co-authored-by: Guillaume Lemaitre <g.lemaitre58@gmail.com> Co-authored-by: Omar Salman <omar.salman@arbisoft.com>
1 parent 0684a89 commit dafef82

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

sklearn/tests/test_calibration.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import numpy as np
55
import pytest
66
from numpy.testing import assert_allclose
7-
from scipy import sparse
87

98
from sklearn.base import BaseEstimator, clone
109
from sklearn.calibration import (
@@ -48,6 +47,7 @@
4847
assert_array_equal,
4948
)
5049
from sklearn.utils.extmath import softmax
50+
from sklearn.utils.fixes import CSR_CONTAINERS
5151

5252
N_SAMPLES = 200
5353

@@ -58,9 +58,10 @@ def data():
5858
return X, y
5959

6060

61+
@pytest.mark.parametrize("csr_container", CSR_CONTAINERS)
6162
@pytest.mark.parametrize("method", ["sigmoid", "isotonic"])
6263
@pytest.mark.parametrize("ensemble", [True, False])
63-
def test_calibration(data, method, ensemble):
64+
def test_calibration(data, method, csr_container, ensemble):
6465
# Test calibration objects with isotonic and sigmoid
6566
n_samples = N_SAMPLES // 2
6667
X, y = data
@@ -83,7 +84,7 @@ def test_calibration(data, method, ensemble):
8384
# Naive Bayes with calibration
8485
for this_X_train, this_X_test in [
8586
(X_train, X_test),
86-
(sparse.csr_matrix(X_train), sparse.csr_matrix(X_test)),
87+
(csr_container(X_train), csr_container(X_test)),
8788
]:
8889
cal_clf = CalibratedClassifierCV(clf, method=method, cv=5, ensemble=ensemble)
8990
# Note that this fit overwrites the fit on the entire training
@@ -284,7 +285,8 @@ def predict(self, X):
284285
assert_allclose(probas, 1.0 / clf.n_classes_)
285286

286287

287-
def test_calibration_prefit():
288+
@pytest.mark.parametrize("csr_container", CSR_CONTAINERS)
289+
def test_calibration_prefit(csr_container):
288290
"""Test calibration for prefitted classifiers"""
289291
n_samples = 50
290292
X, y = make_classification(n_samples=3 * n_samples, n_features=6, random_state=42)
@@ -314,7 +316,7 @@ def test_calibration_prefit():
314316
# Naive Bayes with calibration
315317
for this_X_calib, this_X_test in [
316318
(X_calib, X_test),
317-
(sparse.csr_matrix(X_calib), sparse.csr_matrix(X_test)),
319+
(csr_container(X_calib), csr_container(X_test)),
318320
]:
319321
for method in ["isotonic", "sigmoid"]:
320322
cal_clf = CalibratedClassifierCV(clf, method=method, cv="prefit")

0 commit comments

Comments
 (0)
0