csv-excel-merger
複数のCSV/Excelファイルを、インテリジェントな列マッチング・重複排除・競合解決機能を用いて結合します。異なるスキーマやフォーマットにも対応し、複数のデータソースを統合できます。スプレッドシートのマージ、データエクスポートの結合、複数ファイルの一元化が必要な場合にご活用ください。
description の原文を見る
Merge multiple CSV/Excel files with intelligent column matching, data deduplication, and conflict resolution. Handles different schemas, formats, and combines data sources. Use when users need to merge spreadsheets, combine data exports, or consolidate multiple files into one.
SKILL.md 本文
CSV/Excel マージャー
自動列マッチングとデータ重複排除を備えた複数のCSVまたはExcelファイルのインテリジェント統合。
説明
ユーザーがCSVまたはExcelファイルをマージする必要がある場合:
-
入力ファイルの分析:
- マージが必要なファイルは何個か?
- 形式は何か (CSV, Excel, TSV)?
- ファイルは提供されているか、ディスクから読み込む必要があるか?
- 列名はファイル間で同じか?
- 主キー (一意の識別子) は何か?
-
ファイル構造の検査:
- 各ファイルのヘッダーを読み込む
- 列名とデータ型を特定
- エンコーディングを検出 (UTF-8, Latin-1など)
- 欠落している列をチェック
- 重複する列名を探す
-
マージ戦略の作成:
列マッチング:
- 完全一致: "email" = "email"
- 大文字小文字区別なし: "Email" = "email"
- ファジーマッチ: "E-mail" ≈ "email"
- 共通パターン:
- "first_name", "firstname", "First Name" → "first_name"
- "phone", "phone_number", "tel" → "phone"
- "email", "e-mail", "email_address" → "email"
競合解決 (同じレコードが複数ファイルに出現する場合):
- 最初を保持: 最初のファイルの値を使用
- 最後を保持: 最後のファイルの値を使用 (最新)
- 最長を保持: 最も完全な値を使用
- 手動レビュー: ユーザーレビュー用に競合をフラグ
- マージ: 競合しないフィールドを結合
重複排除:
- 主キーに基づいて重複行を特定
- オプション: 最初を保持、最後を保持、すべて保持、値をマージ
- 各行のソースファイルを追跡
-
マージの実行:
# マージロジックの例 import pandas as pd # ファイルを読み込む df1 = pd.read_csv('file1.csv') df2 = pd.read_csv('file2.csv') # 列名を正規化 df1.columns = df1.columns.str.lower().str.strip() df2.columns = df2.columns.str.lower().str.strip() # 類似列をマップ column_mapping = { 'firstname': 'first_name', 'e_mail': 'email', # ... } df2 = df2.rename(columns=column_mapping) # マージ merged = pd.concat([df1, df2], ignore_index=True) # 重複排除 merged = merged.drop_duplicates(subset=['email'], keep='last') # 保存 merged.to_csv('merged_output.csv', index=False) -
出力形式:
📊 CSV/EXCEL マージャー レポート ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 📁 入力ファイル ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ファイル 1: contacts_jan.csv 行数: 1,245 列数: 8 (name, email, phone, company, ...) ファイル 2: contacts_feb.csv 行数: 987 列数: 9 (firstname, lastname, email, mobile, ...) ファイル 3: leads_export.xlsx 行数: 2,103 列数: 12 (full_name, email_address, phone, ...) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 🔄 列マッピング ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 統一スキーマ: • first_name ← [firstname, first name, fname] • last_name ← [lastname, last name, lname] • email ← [email, e-mail, email_address] • phone ← [phone, mobile, phone_number, tel] • company ← [company, organization, org] • title ← [title, job_title, position] • source ← [ファイル出典追跡] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 🔍 マージ分析 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ マージ前の総行数: 4,335 重複レコード発見: 892 検出された競合: 47 重複排除戦略: 最新を保持 (ソースファイル日付) 主キー: email ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ⚠️ 競合 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ レコード: john.doe@example.com ファイル 1 電話: (555) 123-4567 ファイル 2 電話: (555) 987-6543 解決方法: 最新を保持 (ファイル 2) [上位10件の競合を一覧表示] ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ✅ マージ結果 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 出力ファイル: merged_contacts.csv 総行数: 3,443 列数: 7 削除された重複: 892 ソース別の内訳: • contacts_jan.csv: 1,245行 (ユニーク 398) • contacts_feb.csv: 987行 (ユニーク 521) • leads_export.xlsx: 2,103行 (ユニーク 2,524) データ品質: • メール完全性: 98.2% • 電話完全性: 87.5% • 会社完全性: 91.3% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 💡 推奨事項 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • 47件の競合レコードを手動でレビュー • 電話番号形式を標準化 • 欠落している会社名を入力 (8.7% 不完全) • 競合ファイルをエクスポート: conflicts_review.csv -
特殊ケースの処理:
複数の主キー:
- 複合キーを使用: (email + company)
- あいまいな場合はオプションを提供
異なるデータ型:
- 日付を標準形式に変換
- 電話番号を正規化
- 国コードを標準化
- 空白と大文字小文字をクリーン
欠落する列:
- 空の値で埋める
- 欠落データをフラグ
- 新しい列を作成するオプションを提供
大きなファイル:
- 100MB以上のファイルはチャンキングを使用
- 進捗インジケーターを表示
- メモリ使用量を推定
-
コード生成: 以下を実行するPython/pandasスクリプトを提供:
- すべてのファイルを読み込む
- インテリジェントな列マッチングを実行
- 戦略に基づいて重複排除
- 競合を解決
- マージされた出力を保存
- 詳細レポートを生成
-
エクスポートオプション:
- CSV (UTF-8)
- Excel (.xlsx)
- JSON
- SQL INSERT ステートメント
- Parquet (大規模データセット用)
例となるトリガー
- "これら3つのCSVファイルをマージして"
- "複数のExcelシートを1つのファイルに結合"
- "顧客データを重複排除してマージ"
- "異なる列名を持つスプレッドシートを結合"
- "異なるソースの連絡先リストを統合"
ベストプラクティス
列マッチング:
- 類似名にはファジーマッチを使用
- 元の列名マッピングレポートを維持
- 自動マッチングの手動オーバーライドを許可
データ品質:
- 空白をトリム
- 形式を標準化 (電話, メール, 日付)
- 無効なデータを検出してフラグ
- データ型を保持
パフォーマンス:
- 大きなファイルはチャンキングを使用
- バッチで処理
- 長時間操作の進捗を表示
- メモリ使用量を最適化
透明性:
- すべてのマージ決定をログ
- 各行のソースファイルを追跡
- 競合と解決を報告
- 詳細なマージレポートを生成
出力品質
マージが以下を確保:
- インテリジェントに列をマッチ
- 異なるスキーマを処理
- 適切に重複排除
- データ整合性を保持
- レビュー用に競合をフラグ
- 包括的なレポートを生成
- データ品質を維持
- データ系統を追跡 (ソース)
- エッジケースを適切に処理
- 検証統計を提供
クリーンで重複排除されたマージファイルを完全な透明性とデータ品質チェック付きで生成してください。
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- onewave-ai
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/onewave-ai/claude-skills / ライセンス: MIT
関連スキル
hugging-face-trackio
Trackioを使用してMLトレーニング実験を追跡・可視化できます。トレーニング中のメトリクスログ記録(Python API)、トレーニング診断のアラート発火、ログされたメトリクスの取得・分析(CLI)が必要な場合に活用してください。リアルタイムダッシュボード表示、Webhookを使用したアラート、HF Space同期、自動化向けのJSON出力に対応しています。
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が天井をつけているか」「オンチェーン指標は何を示しているか」といった質問の際にこのスキルを活用します。
protein_solubility_optimization
タンパク質の溶解性最適化 - タンパク質の溶解性を最適化します。タンパク質の特性を計算し、溶解性と親水性を予測し、有効な変異を提案します。タンパク質配列の特性計算、タンパク質機能の予測、親水性計算、ゼロショット配列予測を含むタンパク質エンジニアリング業務に使用できます。3つのSCPサーバーから4つのツールを統合しています。
research-lookup
Parallel Chat APIまたはPerplexity sonar-pro-searchを使用して、最新の研究情報を検索できます。学術論文の検索にも対応しています。クエリは自動的に最適なバックエンドにルーティングされるため、論文の検索、研究データの収集、科学情報の検証に活用できます。
tree-formatting
ggtree(R)またはiTOL(ウェブ)を使用して、系統樹の可視化とフォーマットを行います。系統樹を図として描画する際、ツリーレイアウトの選択、分類学に基づく枝やラベルの色付け、クレードの折りたたみ、サポート値の表示、またはツリーへのオーバーレイ追加が必要な場合に使用してください。系統推定(protein-phylogenyスキルを使用)やドメイン注釈(今後の独立したスキル)には使用しないでください。
querying-indonesian-gov-data
インドネシア政府の50以上のAPIとデータソースに接続できます。BPJPH(ハラール認証)、BOM(食品安全)、OJK(金融適正性)、BPS(統計)、BMKG(気象・地震)、インドネシア中央銀行(為替レート)、IDX(株式)、CKAN公開データポータル、pasal.id(第三者法MCP)に対応しています。インドネシア政府データを活用したアプリ開発、.go.idウェブサイトのスクレイピング、ハラール認証の確認、企業の法的適正性の検証、金融機関ステータスの照会、またはインドネシアMCPサーバーへの接続時に使用できます。CSRF処理、CKAN API使用方法、IP制限回避など、すぐに実行可能なPythonパターンを含んでいます。