diff options
author | sethah <seth.hendrickson16@gmail.com> | 2016-04-15 12:14:41 -0700 |
---|---|---|
committer | Joseph K. Bradley <joseph@databricks.com> | 2016-04-15 12:14:41 -0700 |
commit | 129f2f455da982ec9fab593299fa4021b62827eb (patch) | |
tree | 4cb68c4b09db6e572db333acd8ee242a4a4fbcbe /python/pyspark/ml/pipeline.py | |
parent | d6ae7d4637d23c57c4eeab79d1177216f380ec9c (diff) | |
download | spark-129f2f455da982ec9fab593299fa4021b62827eb.tar.gz spark-129f2f455da982ec9fab593299fa4021b62827eb.tar.bz2 spark-129f2f455da982ec9fab593299fa4021b62827eb.zip |
[SPARK-14104][PYSPARK][ML] All Python param setters should use the `_set` method
## What changes were proposed in this pull request?
Param setters in python previously accessed the _paramMap directly to update values. The `_set` method now implements type checking, so it should be used to update all parameters. This PR eliminates all direct accesses to `_paramMap` besides the one in the `_set` method to ensure type checking happens.
Additional changes:
* [SPARK-13068](https://github.com/apache/spark/pull/11663) missed adding type converters in evaluation.py so those are done here
* An incorrect `toBoolean` type converter was used for StringIndexer `handleInvalid` param in previous PR. This is fixed here.
## How was this patch tested?
Existing unit tests verify that parameters are still set properly. No new functionality is actually added in this PR.
Author: sethah <seth.hendrickson16@gmail.com>
Closes #11939 from sethah/SPARK-14104.
Diffstat (limited to 'python/pyspark/ml/pipeline.py')
-rw-r--r-- | python/pyspark/ml/pipeline.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/python/pyspark/ml/pipeline.py b/python/pyspark/ml/pipeline.py index 9d654e8b0f..6f599b5159 100644 --- a/python/pyspark/ml/pipeline.py +++ b/python/pyspark/ml/pipeline.py @@ -90,7 +90,7 @@ class Pipeline(Estimator, MLReadable, MLWritable): :param value: a list of transformers or estimators :return: the pipeline instance """ - self._paramMap[self.stages] = value + self._set(stages=value) return self @since("1.3.0") |