csv-data-summarizer

Analyzes CSV files, generates summary stats, and plots quick visualizations using Python and pandas.

About csv-data-summarizer

csv-data-summarizer is a Claude AI skill developed by coffeefuelbump. Analyzes CSV files, generates summary stats, and plots quick visualizations using Python and pandas. This powerful Claude Code plugin helps developers automate workflows and enhance productivity with intelligent AI assistance.

0Stars
0Forks
2025-10-17

Why use csv-data-summarizer? With 0 stars on GitHub, this skill has been trusted by developers worldwide. Install this Claude skill instantly to enhance your development workflow with AI-powered automation.

nameExcel Analysis
descriptionAnalyze Excel spreadsheets, create pivot tables, generate charts, and perform data analysis. Use when analyzing Excel files, spreadsheets, tabular data, or .xlsx files.

Excel Analysis

Quick start

Read Excel files with pandas:

import pandas as pd # Read Excel file df = pd.read_excel("data.xlsx", sheet_name="Sheet1") # Display first few rows print(df.head()) # Basic statistics print(df.describe())

Reading multiple sheets

Process all sheets in a workbook:

import pandas as pd # Read all sheets excel_file = pd.ExcelFile("workbook.xlsx") for sheet_name in excel_file.sheet_names: df = pd.read_excel(excel_file, sheet_name=sheet_name) print(f"\n{sheet_name}:") print(df.head())

Data analysis

Perform common analysis tasks:

import pandas as pd df = pd.read_excel("sales.xlsx") # Group by and aggregate sales_by_region = df.groupby("region")["sales"].sum() print(sales_by_region) # Filter data high_sales = df[df["sales"] > 10000] # Calculate metrics df["profit_margin"] = (df["revenue"] - df["cost"]) / df["revenue"] # Sort by column df_sorted = df.sort_values("sales", ascending=False)

Creating Excel files

Write data to Excel with formatting:

import pandas as pd df = pd.DataFrame({ "Product": ["A", "B", "C"], "Sales": [100, 200, 150], "Profit": [20, 40, 30] }) # Write to Excel writer = pd.ExcelWriter("output.xlsx", engine="openpyxl") df.to_excel(writer, sheet_name="Sales", index=False) # Get worksheet for formatting worksheet = writer.sheets["Sales"] # Auto-adjust column widths for column in worksheet.columns: max_length = 0 column_letter = column[0].column_letter for cell in column: if len(str(cell.value)) > max_length: max_length = len(str(cell.value)) worksheet.column_dimensions[column_letter].width = max_length + 2 writer.close()

Pivot tables

Create pivot tables programmatically:

import pandas as pd df = pd.read_excel("sales_data.xlsx") # Create pivot table pivot = pd.pivot_table( df, values="sales", index="region", columns="product", aggfunc="sum", fill_value=0 ) print(pivot) # Save pivot table pivot.to_excel("pivot_report.xlsx")

Charts and visualization

Generate charts from Excel data:

import pandas as pd import matplotlib.pyplot as plt df = pd.read_excel("data.xlsx") # Create bar chart df.plot(x="category", y="value", kind="bar") plt.title("Sales by Category") plt.xlabel("Category") plt.ylabel("Sales") plt.tight_layout() plt.savefig("chart.png") # Create pie chart df.set_index("category")["value"].plot(kind="pie", autopct="%1.1f%%") plt.title("Market Share") plt.ylabel("") plt.savefig("pie_chart.png")

Data cleaning

Clean and prepare Excel data:

import pandas as pd df = pd.read_excel("messy_data.xlsx") # Remove duplicates df = df.drop_duplicates() # Handle missing values df = df.fillna(0) # or df.dropna() # Remove whitespace df["name"] = df["name"].str.strip() # Convert data types df["date"] = pd.to_datetime(df["date"]) df["amount"] = pd.to_numeric(df["amount"], errors="coerce") # Save cleaned data df.to_excel("cleaned_data.xlsx", index=False)

Merging and joining

Combine multiple Excel files:

import pandas as pd # Read multiple files df1 = pd.read_excel("sales_q1.xlsx") df2 = pd.read_excel("sales_q2.xlsx") # Concatenate vertically combined = pd.concat([df1, df2], ignore_index=True) # Merge on common column customers = pd.read_excel("customers.xlsx") sales = pd.read_excel("sales.xlsx") merged = pd.merge(sales, customers, on="customer_id", how="left") merged.to_excel("merged_data.xlsx", index=False)

Advanced formatting

Apply conditional formatting and styles:

import pandas as pd from openpyxl import load_workbook from openpyxl.styles import PatternFill, Font # Create Excel file df = pd.DataFrame({ "Product": ["A", "B", "C"], "Sales": [100, 200, 150] }) df.to_excel("formatted.xlsx", index=False) # Load workbook for formatting wb = load_workbook("formatted.xlsx") ws = wb.active # Apply conditional formatting red_fill = PatternFill(start_color="FF0000", end_color="FF0000", fill_type="solid") green_fill = PatternFill(start_color="00FF00", end_color="00FF00", fill_type="solid") for row in range(2, len(df) + 2): cell = ws[f"B{row}"] if cell.value < 150: cell.fill = red_fill else: cell.fill = green_fill # Bold headers for cell in ws[1]: cell.font = Font(bold=True) wb.save("formatted.xlsx")

Performance tips

  • Use read_excel with usecols to read specific columns only
  • Use chunksize for very large files
  • Consider using engine='openpyxl' or engine='xlrd' based on file type
  • Use dtype parameter to specify column types for faster reading

Available packages

  • pandas - Data analysis and manipulation (primary)
  • openpyxl - Excel file creation and formatting
  • xlrd - Reading older .xls files
  • xlsxwriter - Advanced Excel writing capabilities
  • matplotlib - Chart generation
coffeefuelbump

coffeefuelbump

csv-data-summarizer-claude-skill

View on GitHub

Download Skill Files

View Installation Guide

Download the complete skill directory including SKILL.md and all related files