transforming-data

Transform raw data into analytical datasets using dbt, pandas, polars, PySpark, and Airflow.

1|Updated Feb 24, 2026
One-click install
npx skills add https://github.com/masermediagroup-stack/maser-media --skill transforming-data-masermediagroup-stack
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: transforming-data
Source: https://github.com/masermediagroup-stack/maser-media/tree/main/.cursor/skills/community/ai-design-components/skills/transforming-data
Command: npx skills add https://github.com/masermediagroup-stack/maser-media --skill transforming-data-masermediagroup-stack

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires pandas, polars, numpy, and includes scripts (resource) and references (resource) components.

What problem does it solve? Building reliable data transformation pipelines requires choosing between ETL and ELT patterns, selecting the right DataFrame library, structuring dbt projects correctly, and orchestrating multi-step workflows with testing—decisions that are easy to get wrong without guidance. ## Core Features & Use Cases - dbt Model Architecture: Implements the three-layer pattern (staging, intermediate, marts) with incremental models, materialization strategies, and built-in testing. - DataFrame Library Selection: Provides decision frameworks and migration guides for pandas, polars, and PySpark based on data size and performance needs. - Pipeline Orchestration: Covers Airflow, Dagster, and Prefect patterns including dependencies, retries, and monitoring. - Use Case: Migrate a slow pandas transformation script processing 5GB of sales data to polars with lazy evaluation, then wrap it in an Airflow DAG with dbt tests and data quality checks. ## Quick Start Ask the AI to build a dbt incremental model for your orders table with staging and marts layers, plus an Airflow DAG to orchestrate it daily.

Frequently Asked Questions about transforming-data

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build an incremental dbt model?▼

Configure the model with materialized='incremental' and a unique_key, then add a conditional where clause using is_incremental() to filter records newer than the maximum timestamp in the existing table. This processes only new or changed rows on each run.

pandas vs polars: which DataFrame library should I use?▼

Use pandas for datasets under 500MB and prototyping; use polars for 500MB-100GB production pipelines where its multi-threaded lazy evaluation runs 10-100x faster. For datasets over 100GB requiring distributed clusters, choose PySpark.

When should I use ELT instead of ETL?▼

Use ELT with a modern cloud warehouse like Snowflake or BigQuery when transformation logic changes frequently and data volume is large. Use ETL when compliance requires pre-load PII redaction or the target system lacks compute power.

How do I migrate pandas code to polars?▼

Replace read_csv with scan_csv for lazy evaluation, convert boolean indexing to filter(pl.col(...)), replace assign with with_columns, and add collect() to execute the lazy query. Most pandas operations have direct polars equivalents.

Airflow vs Dagster vs Prefect for pipeline orchestration?▼

Choose Airflow for enterprise production with thousands of integrations, Dagster for dbt-heavy workflows with asset-based lineage, and Prefect for dynamic workflows with a Pythonic decorator API. Airflow is the safe default for most teams.

Why does my incremental model have duplicate rows?▼

Duplicates occur when the unique_key is missing or the incremental filter overlaps previously loaded data. Set a unique_key with the merge strategy and use a lookback window to handle late-arriving data safely.