---
title: "Get fast feedback on transformations"
description: "You need to iterate on transformation logic before running it on your entire dataset—especially for expensive operations like API calls or model inference."
url: "https://www.pixeltable.com/notebooks/dev-iterative-workflow"
updated: "2026-08-14"
---

# Get fast feedback on transformations

You need to iterate on transformation logic before running it on your entire dataset—especially for expensive operations like API calls or model inference.

- **Type:** Notebook
- **Group:** Core Operations

## How it works

You test transformation logic on sample rows before processing your entire dataset using the iterate-then-add workflow. This lets you validate logic on a few rows before committing to your full table.

You use .select() with .collect() to preview transformations—nothing is stored in your table. If you want to collect only the first few rows, use .head(n) instead of .collect(). Once you're satisfied with the results, use .add_computed_column() with the same expression to persist the transformation across your full table.

## What it covers

- Test transformations on sample rows before applying to your full dataset
- Save expressions as variables to guarantee consistent logic
- Apply the iterate-then-add workflow with built-in functions, expressions, and custom UDFs
- Annotate columns with comments and custom metadata using ColumnSpec

## What it uses

- **Install:** `pip install pixeltable`
- **Pixeltable calls:** `pxt.create_table()`, `@pxt.udf`, `insert()`, `add_computed_column()`, `add_column()`

## Open it

- **Open in Colab:** https://colab.research.google.com/github/pixeltable/pixeltable/blob/release/docs/release/howto/cookbooks/core/dev-iterative-workflow.ipynb
- **Docs page:** https://docs.pixeltable.com/howto/cookbooks/core/dev-iterative-workflow
- **Source on GitHub:** https://github.com/pixeltable/pixeltable/blob/release/docs/release/howto/cookbooks/core/dev-iterative-workflow.ipynb
