FastTransform

0.0.2 · active · verified Mon Apr 13

Fasttransform is a Python library designed for creating reusable, reversible, and extensible data transformations. It is a core building block for data pipelines, particularly within the fastai ecosystem, and leverages multiple dispatch for type-based specialization of transforms. The current version is 0.0.2, and it appears to have a low release cadence with infrequent updates.

Warnings

Install

Imports

Quickstart

This quickstart demonstrates how to define a simple transform using the `@Transform` decorator, create a reversible transform by passing encode and decode functions, and compose multiple transforms into a `Pipeline`.

from fasttransform import Transform, Pipeline

# Create a simple transform using a decorator
@Transform
def add_one(x: int) -> int:
    return x + 1

# Create a reversible transform
def multiply_by_two_encodes(x: int) -> int:
    return x * 2

def multiply_by_two_decodes(x: int) -> int:
    return x // 2

MultiplyByTwo = Transform(multiply_by_two_encodes, multiply_by_two_decodes)

# Use a Pipeline to chain transforms
my_pipeline = Pipeline([add_one, MultiplyByTwo])

# Demonstrate usage
result_encoded = my_pipeline(5)
print(f"Encoded result: {result_encoded}") # Expected: (5 + 1) * 2 = 12

result_decoded = MultiplyByTwo.decode(result_encoded)
print(f"Decoded result (MultiplyByTwo): {result_decoded}") # Expected: 12 // 2 = 6

view raw JSON →