Skip to content

Transform operations

Transform applies deterministic operations. Geometry is always kept. Add transformation groups them:

  • Fields — Rename, Replace text, Compute column, Trim whitespace, Convert type
  • Rows — Filter rows
  • Geometry — Clip, Simplify, Buffer

Build them by hand, with Output Fields, from a Recipe, or — if enabled — by describing the change with AI. AI only authors the operations. Run does not call AI again.

A Transform step can instead use SQL Transform (DuckDB SQL against source). Basic operations and SQL are mutually exclusive for one step.

Operations you cannot pick in the Add dialog still exist when a Recipe, AI, or Output Fields emits them (keep_columns, drop_column).

Operations you can add

Rename column

Purpose: Rename a field.

Required: From, To

Example: shape_len → perimeter

Limits: To must be a valid identifier and must not already exist. Geometry cannot be renamed.

Replace text

Purpose: Find and replace inside a text field.

Required: Column, Find ( Replace may be empty to delete the find text)

Example: Rd. → Road in column name

Limits: The value is treated as text.

Trim whitespace

Purpose: Strip leading and trailing spaces.

Required: Column

Convert type

Purpose: Cast a field.

Required: Column, Target type (integer, float, or string)

Filter rows

Purpose: Keep rows that match a comparison.

Required (Simple): Column, Operator, Value (or Values for “is one of”)

Operators: =, !=, >, <, >=, <=, is one of, is not one of

Example: status = active

Expression mode: a condition such as population > 10000 AND status = 'active'. See Expression syntax.

Limits: No geometry column. Not a SQL query console.

Compute column

Purpose: Create a new field.

Required: Expression, Target column

Simple example: shape_area / 10000 into hectares

Limits (Simple): Only + - * / ( ), numbers, and existing field names. Target name must not already exist.

Expression mode: comparisons, AND / OR, and a small function list. See Expression syntax.

Clip

Purpose: Keep only the part of each feature inside an area. Geometries that cross the edge are cut.

Required: Bounding box (min_x, min_y, max_x, max_y) or a Polygon / MultiPolygon as WKT or GeoJSON.

Coordinates use the source CRS. GeoJibe does not assume EPSG:4326.

Simplify

Purpose: Reduce geometry detail.

Required: Tolerance in source CRS units. Preserve topology defaults to on.

Buffer

Purpose: Create an area around each feature. Points and lines become polygons.

Required: Distance in source CRS units. Optional quadrant segments under Advanced options.

Metres are only accepted when the source CRS is known to use metres. Geographic layers (for example EPSG:4326) use degrees.

Output Fields (keep / drop)

Unchecked names are omitted. This is how you remove columns without an extra “Remove column” card.

Internally that is keep_columns / drop_column. You will not usually add those from the Add dialog.

Geometry is never listed and cannot be dropped.

Execution order

Operations run in list order, then Output Fields. A later step cannot use a field you already renamed or removed.

Recipes

A Recipe stores operations plus Output Fields. Apply it in Transform. Save as Recipe stores the current set. Recipes are not Jobs.

See also