parent
e803d06d8c
commit
10bb0a74ef
@ -36,7 +36,8 @@ dependencies:
|
|||||||
- cloudpickle
|
- cloudpickle
|
||||||
- shap
|
- shap
|
||||||
- modin
|
- modin
|
||||||
|
# TODO: Replace it with pyspark>=3.4 once 3.4 released.
|
||||||
|
# - https://ml-team-public-read.s3.us-west-2.amazonaws.com/pyspark-3.4.0.dev0.tar.gz
|
||||||
|
- pyspark>=3.3.1
|
||||||
- pip:
|
- pip:
|
||||||
- datatable
|
- datatable
|
||||||
# TODO: Replace it with pyspark>=3.4 once 3.4 released.
|
|
||||||
- https://ml-team-public-read.s3.us-west-2.amazonaws.com/pyspark-3.4.0.dev0.tar.gz
|
|
||||||
|
|||||||
@ -41,6 +41,16 @@ logging.getLogger("py4j").setLevel(logging.INFO)
|
|||||||
pytestmark = testing.timeout(60)
|
pytestmark = testing.timeout(60)
|
||||||
|
|
||||||
|
|
||||||
|
def no_sparse_unwrap():
|
||||||
|
try:
|
||||||
|
from pyspark.sql.functions import unwrap_udt
|
||||||
|
|
||||||
|
except ImportError:
|
||||||
|
return {"reason": "PySpark<3.4", "condition": True}
|
||||||
|
|
||||||
|
return {"reason": "PySpark<3.4", "condition": False}
|
||||||
|
|
||||||
|
|
||||||
class XgboostLocalTest(SparkTestCase):
|
class XgboostLocalTest(SparkTestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
logging.getLogger().setLevel("INFO")
|
logging.getLogger().setLevel("INFO")
|
||||||
@ -985,6 +995,7 @@ class XgboostLocalTest(SparkTestCase):
|
|||||||
model = classifier.fit(self.cls_df_train)
|
model = classifier.fit(self.cls_df_train)
|
||||||
model.transform(self.cls_df_test).collect()
|
model.transform(self.cls_df_test).collect()
|
||||||
|
|
||||||
|
@pytest.mark.skipif(**no_sparse_unwrap())
|
||||||
def test_regressor_with_sparse_optim(self):
|
def test_regressor_with_sparse_optim(self):
|
||||||
regressor = SparkXGBRegressor(missing=0.0)
|
regressor = SparkXGBRegressor(missing=0.0)
|
||||||
model = regressor.fit(self.reg_df_sparse_train)
|
model = regressor.fit(self.reg_df_sparse_train)
|
||||||
@ -1001,6 +1012,7 @@ class XgboostLocalTest(SparkTestCase):
|
|||||||
for row1, row2 in zip(pred_result, pred_result2):
|
for row1, row2 in zip(pred_result, pred_result2):
|
||||||
self.assertTrue(np.isclose(row1.prediction, row2.prediction, atol=1e-3))
|
self.assertTrue(np.isclose(row1.prediction, row2.prediction, atol=1e-3))
|
||||||
|
|
||||||
|
@pytest.mark.skipif(**no_sparse_unwrap())
|
||||||
def test_classifier_with_sparse_optim(self):
|
def test_classifier_with_sparse_optim(self):
|
||||||
cls = SparkXGBClassifier(missing=0.0)
|
cls = SparkXGBClassifier(missing=0.0)
|
||||||
model = cls.fit(self.cls_df_sparse_train)
|
model = cls.fit(self.cls_df_sparse_train)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user