Class TargetEncoder
- All Implemented Interfaces:
Serializable
,org.apache.spark.internal.Logging
,TargetEncoderBase
,Params
,HasHandleInvalid
,HasInputCol
,HasInputCols
,HasLabelCol
,HasOutputCol
,HasOutputCols
,DefaultParamsWritable
,Identifiable
,MLWritable
When handleInvalid
is configured to 'keep', previously unseen values of a feature
are mapped to the dataset overall statistics.
When 'targetType' is configured to 'binary', categories are encoded as the conditional probability of the target given that category (bin counting). When 'targetType' is configured to 'continuous', categories are encoded as the average of the target given that category (mean encoding)
Parameter 'smoothing' controls how in-category stats and overall stats are weighted.
- See Also:
-
StringIndexer
for converting categorical values into category indices- Serialized Form
- Note:
- When encoding multi-column by using
inputCols
andoutputCols
params, input/output cols come in pairs, specified by the order in the arrays, and each pair is treated independently.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.spark.internal.Logging
org.apache.spark.internal.Logging.LogStringContext, org.apache.spark.internal.Logging.SparkShellLoggingFilter
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionCreates a copy of this instance with the same UID and some extra params.Fits a model to the input data.Param for how to handle invalid data during transform().inputCol()
Param for input column name.final StringArrayParam
Param for input column names.labelCol()
Param for label column name.static TargetEncoder
Param for output column name.final StringArrayParam
Param for output column names.static MLReader<T>
read()
setHandleInvalid
(String value) setInputCol
(String value) setInputCols
(String[] values) setLabelCol
(String value) setOutputCol
(String value) setOutputCols
(String[] values) setSmoothing
(double value) setTargetType
(String 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.Methods inherited from class org.apache.spark.ml.PipelineStage
params
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.spark.ml.util.DefaultParamsWritable
write
Methods inherited from interface org.apache.spark.ml.param.shared.HasHandleInvalid
getHandleInvalid
Methods inherited from interface org.apache.spark.ml.param.shared.HasInputCol
getInputCol
Methods inherited from interface org.apache.spark.ml.param.shared.HasInputCols
getInputCols
Methods inherited from interface org.apache.spark.ml.param.shared.HasLabelCol
getLabelCol
Methods inherited from interface org.apache.spark.ml.param.shared.HasOutputCol
getOutputCol
Methods inherited from interface org.apache.spark.ml.param.shared.HasOutputCols
getOutputCols
Methods inherited from interface org.apache.spark.ml.util.Identifiable
toString
Methods inherited from interface org.apache.spark.internal.Logging
initializeForcefully, 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, withLogContext
Methods inherited from interface org.apache.spark.ml.util.MLWritable
save
Methods inherited from interface org.apache.spark.ml.param.Params
clear, copyValues, defaultCopy, defaultParamMap, explainParam, explainParams, extractParamMap, extractParamMap, get, getDefault, getOrDefault, getParam, hasDefault, hasParam, isDefined, isSet, onParamChange, paramMap, params, set, set, set, setDefault, setDefault, shouldOwn
Methods inherited from interface org.apache.spark.ml.feature.TargetEncoderBase
getSmoothing, getTargetType, inputFeatures, outputFeatures, validateSchema
-
Constructor Details
-
TargetEncoder
-
TargetEncoder
public TargetEncoder()
-
-
Method Details
-
load
-
read
-
handleInvalid
Description copied from interface:TargetEncoderBase
Param for how to handle invalid data during transform(). Options are 'keep' (invalid data presented as an extra categorical feature) or 'error' (throw an error). Note that this Param is only used during transform; during fitting, invalid data will result in an error. Default: "error"- Specified by:
handleInvalid
in interfaceHasHandleInvalid
- Specified by:
handleInvalid
in interfaceTargetEncoderBase
- Returns:
- (undocumented)
-
targetType
- Specified by:
targetType
in interfaceTargetEncoderBase
-
smoothing
- Specified by:
smoothing
in interfaceTargetEncoderBase
-
outputCols
Description copied from interface:HasOutputCols
Param for output column names.- Specified by:
outputCols
in interfaceHasOutputCols
- Returns:
- (undocumented)
-
outputCol
Description copied from interface:HasOutputCol
Param for output column name.- Specified by:
outputCol
in interfaceHasOutputCol
- Returns:
- (undocumented)
-
inputCols
Description copied from interface:HasInputCols
Param for input column names.- Specified by:
inputCols
in interfaceHasInputCols
- Returns:
- (undocumented)
-
inputCol
Description copied from interface:HasInputCol
Param for input column name.- Specified by:
inputCol
in interfaceHasInputCol
- Returns:
- (undocumented)
-
labelCol
Description copied from interface:HasLabelCol
Param for label column name.- Specified by:
labelCol
in interfaceHasLabelCol
- Returns:
- (undocumented)
-
uid
Description copied from interface:Identifiable
An immutable unique ID for the object and its derivatives.- Specified by:
uid
in interfaceIdentifiable
- Returns:
- (undocumented)
-
setLabelCol
-
setInputCol
-
setOutputCol
-
setInputCols
-
setOutputCols
-
setHandleInvalid
-
setTargetType
-
setSmoothing
-
transformSchema
Description copied from class:PipelineStage
Check transform validity and derive the output schema from the input schema.We check validity for interactions between parameters during
transformSchema
and 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:
transformSchema
in classPipelineStage
- Parameters:
schema
- (undocumented)- Returns:
- (undocumented)
-
fit
Description copied from class:Estimator
Fits a model to the input data.- Specified by:
fit
in classEstimator<TargetEncoderModel>
- Parameters:
dataset
- (undocumented)- Returns:
- (undocumented)
-
copy
Description copied from interface:Params
Creates 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:
copy
in interfaceParams
- Specified by:
copy
in classEstimator<TargetEncoderModel>
- Parameters:
extra
- (undocumented)- Returns:
- (undocumented)
-