Skip to content
cccskills
FreePublished on GitHub

dataframe-polars

Use this when performing DataFrame operations — including loading, filtering, joining, aggregating, transforming, or reshaping tabular data with polars or pandas.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md2.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Skill: DataFrame Operations with Polars

Use this skill for DataFrame operations.

Default: Polars

  • Prefer polars for all DataFrame work.
  • Prefer LazyFrame for loading, filtering, joins, aggregations, and transformations.
  • Use eager execution when simpler and data is small.

Pandas: Only When Required

  • Use pandas only when required by an existing dependency, external library, or legacy code.
  • If pandas is needed, keep its usage minimal and convert back to polars as soon as practical.

Transformations

  • Transformations should be reproducible and scriptable.
  • Avoid manual, spreadsheet-like edits.
  • Document data transformations with comments (in Japanese).

Examples

Lazy Scan and Filter

import polars as pl

# Parquetファイルを遅延読み込み
lf = pl.scan_parquet("data/raw/events.parquet")

# 日付フィルタと列選択
result = (
    lf.filter(pl.col("event_date") >= "2024-01-01")
    .select(["user_id", "event_type", "event_date"])
    .collect()
)

Group By and Aggregation

# ユーザーごとのイベント数を集計
summary = (
    lf.group_by("user_id")
    .agg(
        pl.col("event_type").count().alias("event_count"),
        pl.col("event_date").max().alias("last_event"),
    )
    .collect()
)

Safe Join with Row Count Check

left = pl.scan_parquet("data/processed/users.parquet")
right = pl.scan_parquet("data/processed/orders.parquet")

# 結合前の行数を確認
left_count = left.select(pl.len()).collect().item()
right_count = right.select(pl.len()).collect().item()

joined = left.join(right, on="user_id", how="left").collect()

# 結合後の行数を確認(ファンアウトの検出)
assert joined.height >= left_count, "LEFT JOINで行が減少:joinキーを確認"
print(f"left={left_count}, right={right_count}, joined={joined.height}")

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Use this when summarizing analysis results, writing reports, documenting experiment outcomes, or presenting model evaluation — including structuring findings in Japanese with conclusions, facts, assumptions, interpretations, and caveats.

The English summary is being prepared. Showing the original description.

atsushi-green/ds-ai-coding-skills91Updated Oct 4, 2026

因果推論・効果検証(A/B テスト / ABテスト / オンライン実験 / リフト / SRM / CUPED、観察データの処置効果 / ATE / ATT / CATE / 傾向スコア / propensity score / IPW / 二重頑健 / DML / causal forest、準実験 / 差の差 / DiD / イベントスタディ / 操作変数 / IV / 2SLS / 回帰不連続 / RDD / 合成コントロール)を実行したら必ずセットで出す図と値のルーター。 proportions_ztest, chisquare, statsmodels.stats.power, dowhy, econml, causalml, doubleml, propensity, LinearDML, IV2SLS, rdrobust, rddensity, pysyncon, treat*post がコードに現れたとき、またはユーザーが「ABテストの結果を 見て」「施策の効果を推定して」「差の差で」「傾向スコアで揃えて」「閾値前後で比較して」と言ったときに使う。SRM・ バランス・並行トレンド・first-stage に言及がなくても適用する。SKILL.md のルーティング表で設計を特定し、対応する references/<設計>.md を読んでから実行する。実験でない群間比較の検定は statistical-inference-diagnostics、 予測モデルの解釈(SHAP 等)は predictive-modeling-diagnostics を使う。

The English summary is being prepared. Showing the original description.

atsushi-green/ds-ai-coding-skills91Updated Oct 4, 2026

Use this when creating, editing, executing, or reviewing Jupyter notebooks — including cell structure, kernel management, extracting reusable logic to src/, and ensuring notebooks are restartable.

The English summary is being prepared. Showing the original description.

atsushi-green/ds-ai-coding-skills91Updated Oct 4, 2026

Use this when reading from or writing to local files — including constructing file paths with pathlib, creating directories, choosing output locations, and using path utilities from src/analysis_project/paths.py.

The English summary is being prepared. Showing the original description.

atsushi-green/ds-ai-coding-skills91Updated Oct 4, 2026

分析を始める前に構造化された分析計画を作成する

The English summary is being prepared. Showing the original description.

atsushi-green/ds-ai-coding-skills91Updated Oct 4, 2026

予測モデリング(教師あり機械学習 / 予測モデル / 精度評価 / 交差検証 / リーク、決定木 / ランダムフォレスト / GBDT / LightGBM / XGBoost / CatBoost、モデル解釈 / 特徴量重要度 / SHAP / PDP / ICE、時系列 / 季節性 / ARIMA / SARIMA / Prophet / VAR / 変化点 / 時系列予測)を実行したら必ずセットで出す図と値のルーター。train_test_split, cross_val_score, GridSearchCV, Pipeline, TimeSeriesSplit, DecisionTree, RandomForest, lgb., xgb., CatBoost, dtreeviz, shap., permutation_importance, PartialDependenceDisplay, statsmodels.tsa, SARIMAX, STL, adfuller, plot_acf, Prophet, ruptures がコードに現れたとき、または ユーザーが「予測モデルを作って」「精度を出して」「どの変数が効いているか」「来月を予測して」「季節性を見て」と 言ったときに使う。診断・リーク・ベースライン・残差に言及がなくても適用する。SKILL.md のルーティング表で手法を特定し、 対応する references/<手法>.md を読んでから実行する。回帰係数の推論・検定は statistical-inference-diagnostics、 効果推定は causal-inference-diagnostics を使う。

The English summary is being prepared. Showing the original description.

atsushi-green/ds-ai-coding-skills91Updated Oct 4, 2026

See all skills by atsushi-green

Report a problem with this skill