Skip to content
Snippets Groups Projects
Commit 0ded87a4 authored by Yu ISHIKAWA's avatar Yu ISHIKAWA Committed by Xiangrui Meng
Browse files

[SPARK-10281] [ML] [PYSPARK] [DOCS] Add @since annotation to pyspark.ml.clustering

Author: Yu ISHIKAWA <yuu.ishikawa@gmail.com>

Closes #8691 from yu-iskw/SPARK-10281.
parent 29bf8aa5
No related branches found
No related tags found
No related merge requests found
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
# limitations under the License. # limitations under the License.
# #
from pyspark import since
from pyspark.ml.util import keyword_only from pyspark.ml.util import keyword_only
from pyspark.ml.wrapper import JavaEstimator, JavaModel from pyspark.ml.wrapper import JavaEstimator, JavaModel
from pyspark.ml.param.shared import * from pyspark.ml.param.shared import *
...@@ -26,8 +27,11 @@ __all__ = ['KMeans', 'KMeansModel'] ...@@ -26,8 +27,11 @@ __all__ = ['KMeans', 'KMeansModel']
class KMeansModel(JavaModel): class KMeansModel(JavaModel):
""" """
Model fitted by KMeans. Model fitted by KMeans.
.. versionadded:: 1.5.0
""" """
@since("1.5.0")
def clusterCenters(self): def clusterCenters(self):
"""Get the cluster centers, represented as a list of NumPy arrays.""" """Get the cluster centers, represented as a list of NumPy arrays."""
return [c.toArray() for c in self._call_java("clusterCenters")] return [c.toArray() for c in self._call_java("clusterCenters")]
...@@ -55,6 +59,8 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol ...@@ -55,6 +59,8 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol
True True
>>> rows[2].prediction == rows[3].prediction >>> rows[2].prediction == rows[3].prediction
True True
.. versionadded:: 1.5.0
""" """
# a placeholder to make it appear in the generated doc # a placeholder to make it appear in the generated doc
...@@ -88,6 +94,7 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol ...@@ -88,6 +94,7 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol
return KMeansModel(java_model) return KMeansModel(java_model)
@keyword_only @keyword_only
@since("1.5.0")
def setParams(self, featuresCol="features", predictionCol="prediction", k=2, def setParams(self, featuresCol="features", predictionCol="prediction", k=2,
initMode="k-means||", initSteps=5, tol=1e-4, maxIter=20, seed=None): initMode="k-means||", initSteps=5, tol=1e-4, maxIter=20, seed=None):
""" """
...@@ -99,6 +106,7 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol ...@@ -99,6 +106,7 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol
kwargs = self.setParams._input_kwargs kwargs = self.setParams._input_kwargs
return self._set(**kwargs) return self._set(**kwargs)
@since("1.5.0")
def setK(self, value): def setK(self, value):
""" """
Sets the value of :py:attr:`k`. Sets the value of :py:attr:`k`.
...@@ -110,12 +118,14 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol ...@@ -110,12 +118,14 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol
self._paramMap[self.k] = value self._paramMap[self.k] = value
return self return self
@since("1.5.0")
def getK(self): def getK(self):
""" """
Gets the value of `k` Gets the value of `k`
""" """
return self.getOrDefault(self.k) return self.getOrDefault(self.k)
@since("1.5.0")
def setInitMode(self, value): def setInitMode(self, value):
""" """
Sets the value of :py:attr:`initMode`. Sets the value of :py:attr:`initMode`.
...@@ -130,12 +140,14 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol ...@@ -130,12 +140,14 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol
self._paramMap[self.initMode] = value self._paramMap[self.initMode] = value
return self return self
@since("1.5.0")
def getInitMode(self): def getInitMode(self):
""" """
Gets the value of `initMode` Gets the value of `initMode`
""" """
return self.getOrDefault(self.initMode) return self.getOrDefault(self.initMode)
@since("1.5.0")
def setInitSteps(self, value): def setInitSteps(self, value):
""" """
Sets the value of :py:attr:`initSteps`. Sets the value of :py:attr:`initSteps`.
...@@ -147,6 +159,7 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol ...@@ -147,6 +159,7 @@ class KMeans(JavaEstimator, HasFeaturesCol, HasPredictionCol, HasMaxIter, HasTol
self._paramMap[self.initSteps] = value self._paramMap[self.initSteps] = value
return self return self
@since("1.5.0")
def getInitSteps(self): def getInitSteps(self):
""" """
Gets the value of `initSteps` Gets the value of `initSteps`
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment