인터페이스는 현지화되어 있으며, Skill 소개와 설명 문서는 선택한 언어로 AI가 자동 번역합니다. 코드·명령어·경로·전문 용어는 원문을 유지하며 원작자 문서가 우선합니다.
Skills 둘러보기
데이터 및 연구 · SKILL.md

dataframe-workflows

dataframe-workflows

Use this Dask sub-skill for Dask DataFrame creation, CSV/Parquet/JSON/SQL IO, partitions and divisions, groupby/aggregation, joins/merge, shuffle, repartitioning, categorical/string/pyarrow handling, and dask-expr query planning/optimizer behavior.

Independent GitHub snapshot · Automated classification · Original documentation governs

Skill 문서

GitHub

name: dataframe-workflows description: "Use this Dask sub-skill for Dask DataFrame creation, CSV/Parquet/JSON/SQL IO, partitions and divisions, groupby/aggregation, joins/merge, shuffle, repartitioning, categorical/string/pyarrow handling, and dask-expr query planning/optimizer behavior." disable-model-invocation: true metadata: disco-role: operating license: BSD 3-Clause

Dask DataFrame Workflows

Use this sub-skill when a task is about pandas-like tabular workflows with dask.dataframe or the dask_expr DataFrame implementation.

Route Here For

  • Creating DataFrames with dd.from_pandas, dd.from_map, dd.from_delayed, dd.from_dask_array, dd.read_csv, dd.read_parquet, dd.read_json, and SQL readers.
  • Planning CSV, Parquet, JSON, ORC, HDF, SQL, cloud-storage, and partitioned dataset reads/writes.
  • Reasoning about npartitions, divisions, known_divisions, set_index, repartition, shuffle, and partition sizing.
  • Implementing groupby, Aggregation, split_out, joins, merges, index-aware operations, and shuffle-aware query plans.
  • Handling meta, metadata inference, categorical known/unknown state, pandas/pyarrow string conversion, pyarrow-backed dtypes, and dataframe backends.
  • Inspecting or explaining dataframe query planning with optimize(), pprint(), explain(), projection/filter pushdown, partition pruning, and shuffle avoidance.

Route Elsewhere

  • Use ../configuration-diagnostics-cli/SKILL.md for generic Dask config mechanics, CLI commands, progress bars, profilers, install checks, and scheduler diagnostics.
  • Use ../array-workflows/SKILL.md for Dask Array creation, chunking, blockwise array operations, gufuncs, and array/dataframe conversion details beyond from_dask_array or to_dask_array routing.
  • Use ../bag-bytes-workflows/SKILL.md for bag-first text/JSON records, bytes, Avro, and object pipelines before conversion to dataframe.
  • Use ../core-graphs-schedulers/SKILL.md for generic task graphs, delayed, compute, persist, custom collection protocol, and scheduler selection.

Start With These References

  • references/api-reference.md for public DataFrame APIs, method selection, signatures, and dask-expr inspection surfaces.
  • references/io-and-data-formats.md for CSV, Parquet, JSON, SQL, cloud storage, backend dispatch, and format-specific pitfalls.
  • references/workflows.md for practical workflow recipes covering divisions, joins, groupby, repartitioning, meta, categoricals, and optimizer-aware planning.
  • references/troubleshooting.md for missing dependencies, pyarrow strings, unknown divisions, shuffles, metadata failures, categories, Parquet schema/filter issues, and import-time config.

Bundled Smoke Scripts

Run these from this sub-skill directory or pass their paths explicitly:

python scripts/dataframe_smoke.py --help
python scripts/dataframe_smoke.py
python scripts/dataframe_demo_smoke.py --help
python scripts/dataframe_demo_smoke.py

The scripts use tiny temporary or in-memory data, public dask.dataframe APIs, and local/synchronous computation. They do not depend on repository files or write persistent datasets unless you pass an output path.

Operating Rules

  • Keep dataframe pipelines lazy while defining work; call .compute() or .persist() only at execution boundaries or in small smoke checks.
  • Prefer Parquet for durable tabular datasets; use CSV/JSON for ingestion or interchange when schema and partitioning limits are acceptable.
  • Preserve or create useful divisions for repeated .loc, index joins, and groupby/apply on the index; avoid unnecessary full-data shuffles.
  • Provide explicit meta for user functions, custom readers, empty/heterogeneous partitions, or workflows where metadata inference is expensive or wrong.
  • Treat dataframe.query-planning, dataframe.convert-string, and dataframe backend config as import-time-sensitive choices; set them before importing dask.dataframe in fresh processes when behavior must be deterministic.
저장한 Skills