<!--
{
  "availability" : [
    "iOS: 17.0.0 -",
    "iPadOS: 17.0.0 -",
    "macCatalyst: 17.0.0 -",
    "macOS: 14.0.0 -",
    "tvOS: 17.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 11.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "CreateMLComponents",
  "identifier" : "/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "Create ML Components"
    ],
    "preciseIdentifier" : "s:18CreateMLComponents38PreprocessingUpdatableTabularEstimatorV"
  },
  "title" : "PreprocessingUpdatableTabularEstimator"
}
-->

# PreprocessingUpdatableTabularEstimator

An updatable estimator that composes a preprocessing transformer and an updatable estimator.

```
struct PreprocessingUpdatableTabularEstimator<Preprocessor, Estimator> where Preprocessor : TabularTransformer, Estimator : UpdatableTabularEstimator
```

## Topics

### Creating an estimator

[`init(Preprocessor, Estimator)`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/init(_:_:))

Creates a composed updatable estimator from a preprocessing transformer and an estimator.

### Getting the properties

[`var estimator: Estimator`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/estimator)

The estimator.

[`var preprocessor: Preprocessor`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/preprocessor)

The preprocessing transformer.

### Encoding and decoding

[`func encodeWithOptimizer(PreprocessingUpdatableTabularEstimator<Preprocessor, Estimator>.Transformer, to: inout any EstimatorEncoder) throws`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/encodeWithOptimizer(_:to:))

Encodes the transformer and optimizer to an encoder.

[`func decodeWithOptimizer(from: inout any EstimatorDecoder) throws -> PreprocessingUpdatableTabularEstimator<Preprocessor, Estimator>.Transformer`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/decodeWithOptimizer(from:))

Reads the encoded transformer and optimizer.

### Preprocesing and fitting

[`func preprocessed(from: DataFrame, eventHandler: EventHandler?) async throws -> DataFrame`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/preprocessed(from:eventHandler:))

Preprocesses a data frame of examples.

[`func fitted(to: DataFrame, eventHandler: EventHandler?) async throws -> PreprocessingUpdatableTabularEstimator<Preprocessor, Estimator>.Transformer`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/fitted(to:eventHandler:))

Fits a composed transformer to a data frame of examples.

[`func fitted(toPreprocessed: DataFrame, eventHandler: EventHandler?) async throws -> PreprocessingUpdatableTabularEstimator<Preprocessor, Estimator>.Transformer`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/fitted(toPreprocessed:eventHandler:))

Fits a transformer to a data frame of preprocessed features.

[`func update(inout PreprocessingUpdatableTabularEstimator<Preprocessor, Estimator>.Transformer, with: DataFrame, eventHandler: EventHandler?) async throws`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/update(_:with:eventHandler:))

Updates a transformer with a new data frame of examples.

[`func update(inout PreprocessingUpdatableTabularEstimator<Preprocessor, Estimator>.Transformer, withPreprocessed: DataFrame, eventHandler: EventHandler?) async throws`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/update(_:withPreprocessed:eventHandler:))

Updates a transformer with a new data frame of preprocessed features.

[`func makeTransformer() -> PreprocessingUpdatableTabularEstimator<Preprocessor, Estimator>.Transformer`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/makeTransformer())

Creates a default-initialized transformer suitable for incremental fitting.

[`typealias Input`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/Input)

The input type.

[`typealias Intermediate`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/Intermediate)

The intermediate type.

[`typealias Output`](/documentation/CreateMLComponents/PreprocessingUpdatableTabularEstimator/Output)

The output type.

[`protocol Transformer`](/documentation/CreateMLComponents/Transformer)

A transformer that takes an input and produces an output.

## Relationships

### Conforms To

[`UpdatableTabularEstimator`](/documentation/CreateMLComponents/UpdatableTabularEstimator)

[`TabularEstimator`](/documentation/CreateMLComponents/TabularEstimator)

[`Sendable`](/documentation/Swift/Sendable)

[`SendableMetatype`](/documentation/Swift/SendableMetatype)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)