aboutsummaryrefslogtreecommitdiff
path: root/python
diff options
context:
space:
mode:
authorYu ISHIKAWA <yuu.ishikawa@gmail.com>2015-09-17 08:45:20 -0700
committerXiangrui Meng <meng@databricks.com>2015-09-17 08:45:20 -0700
commit29bf8aa5a51fdd8c2600533297f991e14fa27c03 (patch)
tree3693c96eaa4ea637cebf2baabb9a968d9f1b6b2b /python
parentc633ed3260140f1288f326acc4d7a10dcd2e27d5 (diff)
downloadspark-29bf8aa5a51fdd8c2600533297f991e14fa27c03.tar.gz
spark-29bf8aa5a51fdd8c2600533297f991e14fa27c03.tar.bz2
spark-29bf8aa5a51fdd8c2600533297f991e14fa27c03.zip
[SPARK-10283] [ML] [PYSPARK] [DOCS] Add @since annotation to pyspark.ml.regression
Author: Yu ISHIKAWA <yuu.ishikawa@gmail.com> Closes #8693 from yu-iskw/SPARK-10283.
Diffstat (limited to 'python')
-rw-r--r--python/pyspark/ml/regression.py65
1 files changed, 65 insertions, 0 deletions
diff --git a/python/pyspark/ml/regression.py b/python/pyspark/ml/regression.py
index a9503608b7..21d454f900 100644
--- a/python/pyspark/ml/regression.py
+++ b/python/pyspark/ml/regression.py
@@ -15,6 +15,7 @@
# limitations under the License.
#
+from pyspark import since
from pyspark.ml.util import keyword_only
from pyspark.ml.wrapper import JavaEstimator, JavaModel
from pyspark.ml.param.shared import *
@@ -62,6 +63,8 @@ class LinearRegression(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPrediction
Traceback (most recent call last):
...
TypeError: Method setParams forces keyword arguments.
+
+ .. versionadded:: 1.4.0
"""
@keyword_only
@@ -81,6 +84,7 @@ class LinearRegression(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPrediction
self.setParams(**kwargs)
@keyword_only
+ @since("1.4.0")
def setParams(self, featuresCol="features", labelCol="label", predictionCol="prediction",
maxIter=100, regParam=0.0, elasticNetParam=0.0, tol=1e-6, fitIntercept=True,
standardization=True):
@@ -96,13 +100,31 @@ class LinearRegression(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPrediction
def _create_model(self, java_model):
return LinearRegressionModel(java_model)
+ @since("1.4.0")
+ def setElasticNetParam(self, value):
+ """
+ Sets the value of :py:attr:`elasticNetParam`.
+ """
+ self._paramMap[self.elasticNetParam] = value
+ return self
+
+ @since("1.4.0")
+ def getElasticNetParam(self):
+ """
+ Gets the value of elasticNetParam or its default value.
+ """
+ return self.getOrDefault(self.elasticNetParam)
+
class LinearRegressionModel(JavaModel):
"""
Model fitted by LinearRegression.
+
+ .. versionadded:: 1.4.0
"""
@property
+ @since("1.4.0")
def weights(self):
"""
Model weights.
@@ -110,6 +132,7 @@ class LinearRegressionModel(JavaModel):
return self._call_java("weights")
@property
+ @since("1.4.0")
def intercept(self):
"""
Model intercept.
@@ -162,6 +185,8 @@ class DecisionTreeRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
>>> test1 = sqlContext.createDataFrame([(Vectors.sparse(1, [0], [1.0]),)], ["features"])
>>> model.transform(test1).head().prediction
1.0
+
+ .. versionadded:: 1.4.0
"""
# a placeholder to make it appear in the generated doc
@@ -193,6 +218,7 @@ class DecisionTreeRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
self.setParams(**kwargs)
@keyword_only
+ @since("1.4.0")
def setParams(self, featuresCol="features", labelCol="label", predictionCol="prediction",
maxDepth=5, maxBins=32, minInstancesPerNode=1, minInfoGain=0.0,
maxMemoryInMB=256, cacheNodeIds=False, checkpointInterval=10,
@@ -209,6 +235,7 @@ class DecisionTreeRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
def _create_model(self, java_model):
return DecisionTreeRegressionModel(java_model)
+ @since("1.4.0")
def setImpurity(self, value):
"""
Sets the value of :py:attr:`impurity`.
@@ -216,6 +243,7 @@ class DecisionTreeRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
self._paramMap[self.impurity] = value
return self
+ @since("1.4.0")
def getImpurity(self):
"""
Gets the value of impurity or its default value.
@@ -225,13 +253,19 @@ class DecisionTreeRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
@inherit_doc
class DecisionTreeModel(JavaModel):
+ """Abstraction for Decision Tree models.
+
+ .. versionadded:: 1.5.0
+ """
@property
+ @since("1.5.0")
def numNodes(self):
"""Return number of nodes of the decision tree."""
return self._call_java("numNodes")
@property
+ @since("1.5.0")
def depth(self):
"""Return depth of the decision tree."""
return self._call_java("depth")
@@ -242,8 +276,13 @@ class DecisionTreeModel(JavaModel):
@inherit_doc
class TreeEnsembleModels(JavaModel):
+ """Represents a tree ensemble model.
+
+ .. versionadded:: 1.5.0
+ """
@property
+ @since("1.5.0")
def treeWeights(self):
"""Return the weights for each tree"""
return list(self._call_java("javaTreeWeights"))
@@ -256,6 +295,8 @@ class TreeEnsembleModels(JavaModel):
class DecisionTreeRegressionModel(DecisionTreeModel):
"""
Model fitted by DecisionTreeRegressor.
+
+ .. versionadded:: 1.4.0
"""
@@ -282,6 +323,8 @@ class RandomForestRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
>>> test1 = sqlContext.createDataFrame([(Vectors.sparse(1, [0], [1.0]),)], ["features"])
>>> model.transform(test1).head().prediction
0.5
+
+ .. versionadded:: 1.4.0
"""
# a placeholder to make it appear in the generated doc
@@ -336,6 +379,7 @@ class RandomForestRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
self.setParams(**kwargs)
@keyword_only
+ @since("1.4.0")
def setParams(self, featuresCol="features", labelCol="label", predictionCol="prediction",
maxDepth=5, maxBins=32, minInstancesPerNode=1, minInfoGain=0.0,
maxMemoryInMB=256, cacheNodeIds=False, checkpointInterval=10, seed=None,
@@ -353,6 +397,7 @@ class RandomForestRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
def _create_model(self, java_model):
return RandomForestRegressionModel(java_model)
+ @since("1.4.0")
def setImpurity(self, value):
"""
Sets the value of :py:attr:`impurity`.
@@ -360,12 +405,14 @@ class RandomForestRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
self._paramMap[self.impurity] = value
return self
+ @since("1.4.0")
def getImpurity(self):
"""
Gets the value of impurity or its default value.
"""
return self.getOrDefault(self.impurity)
+ @since("1.4.0")
def setSubsamplingRate(self, value):
"""
Sets the value of :py:attr:`subsamplingRate`.
@@ -373,12 +420,14 @@ class RandomForestRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
self._paramMap[self.subsamplingRate] = value
return self
+ @since("1.4.0")
def getSubsamplingRate(self):
"""
Gets the value of subsamplingRate or its default value.
"""
return self.getOrDefault(self.subsamplingRate)
+ @since("1.4.0")
def setNumTrees(self, value):
"""
Sets the value of :py:attr:`numTrees`.
@@ -386,12 +435,14 @@ class RandomForestRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
self._paramMap[self.numTrees] = value
return self
+ @since("1.4.0")
def getNumTrees(self):
"""
Gets the value of numTrees or its default value.
"""
return self.getOrDefault(self.numTrees)
+ @since("1.4.0")
def setFeatureSubsetStrategy(self, value):
"""
Sets the value of :py:attr:`featureSubsetStrategy`.
@@ -399,6 +450,7 @@ class RandomForestRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
self._paramMap[self.featureSubsetStrategy] = value
return self
+ @since("1.4.0")
def getFeatureSubsetStrategy(self):
"""
Gets the value of featureSubsetStrategy or its default value.
@@ -409,6 +461,8 @@ class RandomForestRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredi
class RandomForestRegressionModel(TreeEnsembleModels):
"""
Model fitted by RandomForestRegressor.
+
+ .. versionadded:: 1.4.0
"""
@@ -435,6 +489,8 @@ class GBTRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredictionCol,
>>> test1 = sqlContext.createDataFrame([(Vectors.sparse(1, [0], [1.0]),)], ["features"])
>>> model.transform(test1).head().prediction
1.0
+
+ .. versionadded:: 1.4.0
"""
# a placeholder to make it appear in the generated doc
@@ -481,6 +537,7 @@ class GBTRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredictionCol,
self.setParams(**kwargs)
@keyword_only
+ @since("1.4.0")
def setParams(self, featuresCol="features", labelCol="label", predictionCol="prediction",
maxDepth=5, maxBins=32, minInstancesPerNode=1, minInfoGain=0.0,
maxMemoryInMB=256, cacheNodeIds=False, checkpointInterval=10,
@@ -498,6 +555,7 @@ class GBTRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredictionCol,
def _create_model(self, java_model):
return GBTRegressionModel(java_model)
+ @since("1.4.0")
def setLossType(self, value):
"""
Sets the value of :py:attr:`lossType`.
@@ -505,12 +563,14 @@ class GBTRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredictionCol,
self._paramMap[self.lossType] = value
return self
+ @since("1.4.0")
def getLossType(self):
"""
Gets the value of lossType or its default value.
"""
return self.getOrDefault(self.lossType)
+ @since("1.4.0")
def setSubsamplingRate(self, value):
"""
Sets the value of :py:attr:`subsamplingRate`.
@@ -518,12 +578,14 @@ class GBTRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredictionCol,
self._paramMap[self.subsamplingRate] = value
return self
+ @since("1.4.0")
def getSubsamplingRate(self):
"""
Gets the value of subsamplingRate or its default value.
"""
return self.getOrDefault(self.subsamplingRate)
+ @since("1.4.0")
def setStepSize(self, value):
"""
Sets the value of :py:attr:`stepSize`.
@@ -531,6 +593,7 @@ class GBTRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredictionCol,
self._paramMap[self.stepSize] = value
return self
+ @since("1.4.0")
def getStepSize(self):
"""
Gets the value of stepSize or its default value.
@@ -541,6 +604,8 @@ class GBTRegressor(JavaEstimator, HasFeaturesCol, HasLabelCol, HasPredictionCol,
class GBTRegressionModel(TreeEnsembleModels):
"""
Model fitted by GBTRegressor.
+
+ .. versionadded:: 1.4.0
"""