Agent Skills by ALSEL
汎用データ・分析⭐ リポ 0品質スコア 70/100

synthdata-compute

既存のデータセットから派生テーブル、集計テーブル、または変換テーブルを生成できます。ユーザーが「月次スコアの計算」「月別の集計」「サマリーテーブルの作成」「リスクスコアの算出」「パーセンタイルランクの計算」「イベントのロールアップ」「生データからのベンチマーク作成」「計算列の追加」といった処理や、生成された生データテーブルとダウンストリーム分析との橋渡しが必要な場合に使用します。xlsx、csv、jsonの入力形式に対応しており、Claudeが計算ロジックを記述し、スクリプトがデータの入出力を処理します。

description の原文を見る

Compute derived, aggregated, or transformed tables from existing datasets. Use this skill when the user needs to "compute monthly scores", "aggregate by month", "create a summary table", "derive risk scores", "compute percentile ranks", "roll up events", "create benchmarks from raw data", "add a computed column", or bridge the gap between raw generated tables and downstream analytics. Works on xlsx, csv, or json input. Claude writes the computation logic; the script handles data I/O.

SKILL.md 本文

Synthdata Compute

既存データセットから集計、スコア付け、または変換されたテーブルを導出します。このスキルは、生成された合成データ(synthdata-generate によって作成)と、ダウンストリームツールが期待する導出メトリクス(月次ロールアップ、複合スコア、パーセンタイルランク、セグメント要約)の間のギャップを埋めます。

前提条件

pip install openpyxl pandas numpy --break-system-packages

ワークフロー

ステップ 1: 入力と期待される出力を特定する

ユーザーに以下を質問します:

  • 入力: どのファイルですか?(xlsx ワークブック、csv ディレクトリ、json ファイル)
  • 計算: 何が必要ですか?(自然言語 — 例:「イベントテーブルから月次リスクスコアを計算」)
  • 出力: 結果をどこに保存しますか?(デフォルト:入力ファイルの横にシート/ファイルを追加)

ステップ 2: データを検査する

スクリプトをインスペクトモードで実行して、操作するデータを理解します:

python3 scripts/compute.py --inspect --input data.xlsx

各テーブルの名前、列名と dtype、行数、および 3 行のサンプルを出力します。計算ロジックを作成する前にスキーマを理解するために使用します。

ステップ 3: 計算を作成する

事前読み込みされた DataFrame で動作する Python ファイルを作成します。スクリプトは以下を提供します:

  • tables — テーブル名を pandas DataFrame にマッピングする辞書(すべての入力テーブルが事前読み込みされています)
  • pd — pandas
  • np — numpy
  • result — 空の辞書;各出力テーブルに {name: DataFrame} のペアを割り当てます

計算ファイルの例(monthly_risk.py):

import pandas as pd
import numpy as np

users = tables['users']
threats = tables['threat_events']
sims = tables['phishing_sims']
training = tables['training']
dlp = tables['dlp_events']
abuse = tables['abuse_mailbox']

# イベント日付から月を抽出
threats['month'] = pd.to_datetime(threats['event_date']).dt.to_period('M')
sims['month'] = pd.to_datetime(sims['sim_date']).dt.to_period('M') if 'sim_date' in sims else ...

# ユーザーごと、月ごとにグループ化して集計
# ... (Claude はユーザーの要件に基づいて完全なロジックを作成します)

result['monthly_risk'] = monthly_risk_df

計算を .py ファイルに保存してから実行します。

ステップ 4: 実行する

python3 scripts/compute.py --input data.xlsx --code monthly_risk.py --output data_with_scores.xlsx

CLI フラグ:

フラグ説明
--inputソースデータセット(xlsx/csv-dir/json)
--output出力パス(デフォルト: <input>_computed.<ext>
--inspectテーブルスキーマを出力して終了
--code計算ロジックを含む Python ファイルのパス
--exprインライン Python 式(シンプルなワンライナー用)
--append計算されたテーブルを入力ファイルのコピーに追加(xlsx のみ)

インラインモード(シンプルな計算用):

python3 scripts/compute.py --input data.xlsx --output scored.xlsx \
    --expr "result['summary'] = tables['events'].groupby('category').size().reset_index(name='count')"

ステップ 5: 検証する

実行後、スクリプトは以下を出力します:

  • 各出力テーブルの名前、行数、列名
  • 各出力テーブルの 5 行サンプル
  • 出力パスの確認

ユーザーと一緒に出力を確認してから次に進みます。


一般的な計算レシピ

計算ロジックを作成する際のスタートポイントとして、これらのパターンを使用します。

月次イベントロールアップ

events = tables['threat_events']
events['month'] = pd.to_datetime(events['event_date']).dt.to_period('M').astype(str)
monthly = events.groupby(['user_id', 'month']).agg(
    threat_events=('event_id', 'count'),
    real_clicks=('clicked', 'sum'),
    credentials_entered=('credentials_entered', 'sum'),
).reset_index()
result['monthly_threats'] = monthly

加重サブスコアからの複合スコア

# ウェイトの合計は 1.0 である必要があります
WEIGHTS = {'threat': 0.35, 'sim': 0.25, 'dlp': 0.20, 'training': 0.10, 'reporting': 0.10}

df['composite'] = (
    df['threat_score'] * WEIGHTS['threat']
    + df['sim_score'] * WEIGHTS['sim']
    + df['dlp_score'] * WEIGHTS['dlp']
    + df['training_score'] * WEIGHTS['training']
    + df['reporting_score'] * WEIGHTS['reporting']
)

リスク層の割り当て

def assign_tier(score):
    if score >= 75: return 'Critical'
    if score >= 50: return 'High'
    if score >= 25: return 'Medium'
    return 'Low'

df['risk_tier'] = df['composite_risk_score'].apply(assign_tier)

パーセンタイルランク

df['percentile'] = df['composite_risk_score'].rank(pct=True) * 100

セグメント要約(ピアベンチマーク)

peers = tables['peers_detail']
metrics = ['sim_click_rate', 'training_completion', 'composite_risk_score']
rows = []
for segment_col in ['segment_healthcare', 'segment_geo', 'segment_size']:
    cohort = peers[peers[segment_col] == 1]
    for m in metrics:
        rows.append({
            'segment': segment_col, 'metric': m,
            'mean': cohort[m].mean(), 'median': cohort[m].median(),
            'p25': cohort[m].quantile(0.25), 'p75': cohort[m].quantile(0.75),
        })
result['segment_summaries'] = pd.DataFrame(rows)

部門別の内訳

users = tables['users']
risk = tables['monthly_risk']
merged = risk.merge(users[['user_id', 'department']], on='user_id')
dept = merged.groupby('department').agg(
    avg_risk=('composite_risk_score', 'mean'),
    critical_count=('risk_tier', lambda x: (x == 'Critical').sum()),
    user_count=('user_id', 'nunique'),
).sort_values('avg_risk', ascending=False).reset_index()
result['department_risk'] = dept

このスキルと他のスキルを使い分ける時

必要な処理スキル
スキーマ/テンプレートから新しい行を生成synthdata-generate
Excel → JSON を抽出synthdata-extract
既存データに行/列を追加synthdata-extend
PII を偽の値に置き換えsynthdata-anonymize
既存データから集計、スコア付け、ランク付け、または新しいテーブルを導出synthdata-compute

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
rappdw
リポジトリ
rappdw/synthdata
ライセンス
MIT
最終更新
2026/4/10

Source: https://github.com/rappdw/synthdata / ライセンス: MIT

関連スキル

OpenAIデータ・分析⭐ リポ 1,451

hugging-face-trackio

Trackioを使用してMLトレーニング実験を追跡・可視化できます。トレーニング中のメトリクスログ記録(Python API)、トレーニング診断のアラート発火、ログされたメトリクスの取得・分析(CLI)が必要な場合に活用してください。リアルタイムダッシュボード表示、Webhookを使用したアラート、HF Space同期、自動化向けのJSON出力に対応しています。

by gradio-app
汎用データ・分析⭐ リポ 855

btc-bottom-model

ビットコインのサイクルタイミングモデルで、加重スコアリングシステムを搭載しています。日次パルス(4指標、32ポイント)とウィークリー構造(9指標、68ポイント)の2カテゴリーにわたる13の指標を追跡し、0~100のマーケットヒートスコアを算出します。ETFフロー、ファンディングレート、ロング/ショート比率、恐怖・貪欲指数、LTH-MVRV、NUPL、SOPR(LTH+STH)、LTH供給率、移動平均倍率(365日MA、200週MA)、週次RSI、出来高トレンドに対応します。市場サイクル全体を通じて買いと売りの両方の推奨を提供します。ビットコインの底値拾い、BTCサイクルポジション、買い時・売り時、オンチェーン指標、MVRV、NUPL、SOPR、LTH動向、ETFの流出入、ファンディングレート、恐怖指数、ビットコインが過熱状態か、マイナーコスト、暗号資産市場のセンチメント、BTCのポジションサイジング、「今ビットコインを買うべきか」「BTCが天井をつけているか」「オンチェーン指標は何を示しているか」といった質問の際にこのスキルを活用します。

by star23
Anthropic Claudeデータ・分析⭐ リポ 380

protein_solubility_optimization

タンパク質の溶解性最適化 - タンパク質の溶解性を最適化します。タンパク質の特性を計算し、溶解性と親水性を予測し、有効な変異を提案します。タンパク質配列の特性計算、タンパク質機能の予測、親水性計算、ゼロショット配列予測を含むタンパク質エンジニアリング業務に使用できます。3つのSCPサーバーから4つのツールを統合しています。

by SpectrAI-Initiative
Anthropic Claudeデータ・分析⭐ リポ 1,743

research-lookup

Parallel Chat APIまたはPerplexity sonar-pro-searchを使用して、最新の研究情報を検索できます。学術論文の検索にも対応しています。クエリは自動的に最適なバックエンドにルーティングされるため、論文の検索、研究データの収集、科学情報の検証に活用できます。

by K-Dense-AI
Anthropic Claudeデータ・分析⭐ リポ 299

tree-formatting

ggtree(R)またはiTOL(ウェブ)を使用して、系統樹の可視化とフォーマットを行います。系統樹を図として描画する際、ツリーレイアウトの選択、分類学に基づく枝やラベルの色付け、クレードの折りたたみ、サポート値の表示、またはツリーへのオーバーレイ追加が必要な場合に使用してください。系統推定(protein-phylogenyスキルを使用)やドメイン注釈(今後の独立したスキル)には使用しないでください。

by majiayu000
汎用データ・分析⭐ リポ 145

querying-indonesian-gov-data

インドネシア政府の50以上のAPIとデータソースに接続できます。BPJPH(ハラール認証)、BOM(食品安全)、OJK(金融適正性)、BPS(統計)、BMKG(気象・地震)、インドネシア中央銀行(為替レート)、IDX(株式)、CKAN公開データポータル、pasal.id(第三者法MCP)に対応しています。インドネシア政府データを活用したアプリ開発、.go.idウェブサイトのスクレイピング、ハラール認証の確認、企業の法的適正性の検証、金融機関ステータスの照会、またはインドネシアMCPサーバーへの接続時に使用できます。CSRF処理、CKAN API使用方法、IP制限回避など、すぐに実行可能なPythonパターンを含んでいます。

by suryast
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: rappdw · rappdw/synthdata · ライセンス: MIT