Package org.apache.spark.ml.feature
Class RobustScaler
- All Implemented Interfaces:
- Serializable,- org.apache.spark.internal.Logging,- RobustScalerParams,- Params,- HasInputCol,- HasOutputCol,- HasRelativeError,- DefaultParamsWritable,- Identifiable,- MLWritable
public class RobustScaler
extends Estimator<RobustScalerModel>
implements RobustScalerParams, DefaultParamsWritable
Scale features using statistics that are robust to outliers.
 RobustScaler removes the median and scales the data according to the quantile range.
 The quantile range is by default IQR (Interquartile Range, quantile range between the
 1st quartile = 25th quantile and the 3rd quartile = 75th quantile) but can be configured.
 Centering and scaling happen independently on each feature by computing the relevant
 statistics on the samples in the training set. Median and quantile range are then
 stored to be used on later data using the transform method.
 Standardization of a dataset is a common requirement for many machine learning estimators.
 Typically this is done by removing the mean and scaling to unit variance. However,
 outliers can often influence the sample mean / variance in a negative way.
 In such cases, the median and the quantile range often give better results.
 Note that NaN values are ignored in the computation of medians and ranges.
- See Also:
- 
Nested Class SummaryNested classes/interfaces inherited from interface org.apache.spark.internal.Loggingorg.apache.spark.internal.Logging.LogStringContext, org.apache.spark.internal.Logging.SparkShellLoggingFilter
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionCreates a copy of this instance with the same UID and some extra params.Fits a model to the input data.inputCol()Param for input column name.static RobustScalerlower()Lower quantile to calculate quantile range, shared by all features Default: 0.25Param for output column name.static MLReader<T>read()final DoubleParamParam for the relative target precision for the approximate quantile algorithm.setInputCol(String value) setLower(double value) setOutputCol(String value) setRelativeError(double value) setUpper(double value) setWithCentering(boolean value) setWithScaling(boolean value) transformSchema(StructType schema) Check transform validity and derive the output schema from the input schema.uid()An immutable unique ID for the object and its derivatives.upper()Upper quantile to calculate quantile range, shared by all features Default: 0.75Whether to center the data with median before scaling.Whether to scale the data to quantile range.Methods inherited from class org.apache.spark.ml.PipelineStageparamsMethods inherited from class java.lang.Objectequals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.spark.ml.util.DefaultParamsWritablewriteMethods inherited from interface org.apache.spark.ml.param.shared.HasInputColgetInputColMethods inherited from interface org.apache.spark.ml.param.shared.HasOutputColgetOutputColMethods inherited from interface org.apache.spark.ml.param.shared.HasRelativeErrorgetRelativeErrorMethods inherited from interface org.apache.spark.ml.util.IdentifiabletoStringMethods inherited from interface org.apache.spark.internal.LogginginitializeForcefully, initializeLogIfNecessary, initializeLogIfNecessary, initializeLogIfNecessary$default$2, isTraceEnabled, log, logDebug, logDebug, logDebug, logDebug, logError, logError, logError, logError, logInfo, logInfo, logInfo, logInfo, logName, LogStringContext, logTrace, logTrace, logTrace, logTrace, logWarning, logWarning, logWarning, logWarning, org$apache$spark$internal$Logging$$log_, org$apache$spark$internal$Logging$$log__$eq, withLogContextMethods inherited from interface org.apache.spark.ml.util.MLWritablesaveMethods inherited from interface org.apache.spark.ml.param.Paramsclear, copyValues, defaultCopy, defaultParamMap, explainParam, explainParams, extractParamMap, extractParamMap, get, getDefault, getOrDefault, getParam, hasDefault, hasParam, isDefined, isSet, onParamChange, paramMap, params, set, set, set, setDefault, setDefault, shouldOwnMethods inherited from interface org.apache.spark.ml.feature.RobustScalerParamsgetLower, getUpper, getWithCentering, getWithScaling, validateAndTransformSchema
- 
Constructor Details- 
RobustScaler
- 
RobustScalerpublic RobustScaler()
 
- 
- 
Method Details- 
load
- 
read
- 
lowerDescription copied from interface:RobustScalerParamsLower quantile to calculate quantile range, shared by all features Default: 0.25- Specified by:
- lowerin interface- RobustScalerParams
- Returns:
- (undocumented)
 
- 
upperDescription copied from interface:RobustScalerParamsUpper quantile to calculate quantile range, shared by all features Default: 0.75- Specified by:
- upperin interface- RobustScalerParams
- Returns:
- (undocumented)
 
- 
withCenteringDescription copied from interface:RobustScalerParamsWhether to center the data with median before scaling. It will build a dense output, so take care when applying to sparse input. Default: false- Specified by:
- withCenteringin interface- RobustScalerParams
- Returns:
- (undocumented)
 
- 
withScalingDescription copied from interface:RobustScalerParamsWhether to scale the data to quantile range. Default: true- Specified by:
- withScalingin interface- RobustScalerParams
- Returns:
- (undocumented)
 
- 
relativeErrorDescription copied from interface:HasRelativeErrorParam for the relative target precision for the approximate quantile algorithm. Must be in the range [0, 1].- Specified by:
- relativeErrorin interface- HasRelativeError
- Returns:
- (undocumented)
 
- 
outputColDescription copied from interface:HasOutputColParam for output column name.- Specified by:
- outputColin interface- HasOutputCol
- Returns:
- (undocumented)
 
- 
inputColDescription copied from interface:HasInputColParam for input column name.- Specified by:
- inputColin interface- HasInputCol
- Returns:
- (undocumented)
 
- 
uidDescription copied from interface:IdentifiableAn immutable unique ID for the object and its derivatives.- Specified by:
- uidin interface- Identifiable
- Returns:
- (undocumented)
 
- 
setInputCol
- 
setOutputCol
- 
setLower
- 
setUpper
- 
setWithCentering
- 
setWithScaling
- 
setRelativeError
- 
fitDescription copied from class:EstimatorFits a model to the input data.- Specified by:
- fitin class- Estimator<RobustScalerModel>
- Parameters:
- dataset- (undocumented)
- Returns:
- (undocumented)
 
- 
transformSchemaDescription copied from class:PipelineStageCheck transform validity and derive the output schema from the input schema.We check validity for interactions between parameters during transformSchemaand raise an exception if any parameter value is invalid. Parameter value checks which do not depend on other parameters are handled byParam.validate().Typical implementation should first conduct verification on schema change and parameter validity, including complex parameter interaction checks. - Specified by:
- transformSchemain class- PipelineStage
- Parameters:
- schema- (undocumented)
- Returns:
- (undocumented)
 
- 
copyDescription copied from interface:ParamsCreates a copy of this instance with the same UID and some extra params. Subclasses should implement this method and set the return type properly. SeedefaultCopy().- Specified by:
- copyin interface- Params
- Specified by:
- copyin class- Estimator<RobustScalerModel>
- Parameters:
- extra- (undocumented)
- Returns:
- (undocumented)
 
 
-