From 8db73a5db3d53a207b44b9dfc43d7a55dc5583e4 Mon Sep 17 00:00:00 2001 From: Yu-Ting Hsiung Date: Sun, 11 Oct 2026 11:18:28 +0800 Subject: [PATCH] [MINOR][ML][PYTHON] Clean up FM example typing and formatting --- examples/src/main/python/ml/fm_classifier_example.py | 11 ++++++----- examples/src/main/python/ml/fm_regressor_example.py | 11 ++++++----- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/examples/src/main/python/ml/fm_classifier_example.py b/examples/src/main/python/ml/fm_classifier_example.py index d3fba01b85f54..b081a46d19d01 100644 --- a/examples/src/main/python/ml/fm_classifier_example.py +++ b/examples/src/main/python/ml/fm_classifier_example.py @@ -20,7 +20,7 @@ """ # $example on$ from pyspark.ml import Pipeline -from pyspark.ml.classification import FMClassifier +from pyspark.ml.classification import FMClassificationModel, FMClassifier from pyspark.ml.evaluation import MulticlassClassificationEvaluator from pyspark.ml.feature import MinMaxScaler, StringIndexer @@ -65,12 +65,13 @@ evaluator = MulticlassClassificationEvaluator( labelCol="indexedLabel", predictionCol="prediction", metricName="accuracy") accuracy = evaluator.evaluate(predictions) - print("Test set accuracy = %g" % accuracy) + print(f"Test set accuracy = {accuracy:g}") fmModel = model.stages[2] - print("Factors: " + str(fmModel.factors)) # type: ignore - print("Linear: " + str(fmModel.linear)) # type: ignore - print("Intercept: " + str(fmModel.intercept)) # type: ignore + assert isinstance(fmModel, FMClassificationModel) + print(f"Factors: {fmModel.factors}") + print(f"Linear: {fmModel.linear}") + print(f"Intercept: {fmModel.intercept}") # $example off$ spark.stop() diff --git a/examples/src/main/python/ml/fm_regressor_example.py b/examples/src/main/python/ml/fm_regressor_example.py index 02527a9a34f69..325af151beaf4 100644 --- a/examples/src/main/python/ml/fm_regressor_example.py +++ b/examples/src/main/python/ml/fm_regressor_example.py @@ -22,7 +22,7 @@ from pyspark.ml import Pipeline from pyspark.ml.evaluation import RegressionEvaluator from pyspark.ml.feature import MinMaxScaler -from pyspark.ml.regression import FMRegressor +from pyspark.ml.regression import FMRegressionModel, FMRegressor # $example off$ from pyspark.sql import SparkSession @@ -62,12 +62,13 @@ evaluator = RegressionEvaluator( labelCol="label", predictionCol="prediction", metricName="rmse") rmse = evaluator.evaluate(predictions) - print("Root Mean Squared Error (RMSE) on test data = %g" % rmse) + print(f"Root Mean Squared Error (RMSE) on test data = {rmse:g}") fmModel = model.stages[1] - print("Factors: " + str(fmModel.factors)) # type: ignore - print("Linear: " + str(fmModel.linear)) # type: ignore - print("Intercept: " + str(fmModel.intercept)) # type: ignore + assert isinstance(fmModel, FMRegressionModel) + print(f"Factors: {fmModel.factors}") + print(f"Linear: {fmModel.linear}") + print(f"Intercept: {fmModel.intercept}") # $example off$ spark.stop()