mcpField
D
data-analysis

data-analysis

github.com/jinfanzheng数据与数据库8063 次安装38 周前更新
代码仓库

关于 data-analysis

面向结构化数据任务的统计分析技能,适用于业务、金融和科学数据。涵盖从数据检查、统计检验到图表与报告的处理流程。

主要功能

  1. 01描述统计与分布分析
  2. 02金融收益和风险指标
  3. 03业务趋势与队列分析
  4. 04假设检验与回归
  5. 05生成图表、报告和数据文件

适用场景

  1. 01汇总并探索 CSV 或 JSON 数据
  2. 02计算投资收益、波动率和指标
  3. 03分析销售趋势、转化漏斗或 A/B 测试
  4. 04检验科学数据中的假设

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jinfanzheng/kode-sdk-csharp --skill data-analysis

安装后在 Claude Code 中输入/data-analysis确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

requirements.txt
setup.sh
references/
business.md
financial.md
REFERENCE.md
scientific.md
templates.md

详细介绍

数据分析 - 统计计算与洞察

何时使用此技能

在以下情况下启用此技能:

  • 用户提到“数据分析”“统计”“计算指标”“数据洞察”
  • 需要分析结构化数据(CSV、JSON、数据库)
  • 计算统计数据、趋势、模式
  • 财务分析(收益、波动率、技术指标)
  • 业务分析(销售额、用户行为、KPI)
  • 科学数据处理和假设检验

工作流

1. 获取数据

⚠️ 重要:文件命名要求

  • 文件名不得包含中文字符或非 ASCII 字符
  • 只能使用英文字母、数字、下划线和连字符
  • 示例:data.csv、sales_report_2025.xlsx、analysis_results.json
  • ❌ 无效:销售数据.csv、数据文件.xlsx、報表.json
  • 这可确保在不同系统间的兼容性,并避免编码问题

如果数据已存在:

  • 从文件读取(CSV、JSON、Excel)
  • 如果可用,则查询数据库

如果文件名包含中文字符:

  • 请用户将文件重命名为英文/ASCII 字符
  • 或者在将文件保存到 Agent 目录时重命名

如果没有数据:

  • 自动启用 data-base 技能
  • 抓取/收集所需数据
  • 保存为结构化格式
2. 了解需求

询问用户:

  • 您想回答哪些问题?
  • 哪些指标很重要?
  • 结果需要什么格式?(摘要、图表、报告)
  • 是否有指定的统计方法?
3. 分析

通用分析:

  • 描述性统计(均值、中位数、标准差、百分位数)
  • 分布分析(直方图、箱线图)
  • 相关性分析
  • 组间比较

财务分析:

  • 收益计算(简单收益、对数收益、累计收益)
  • 风险指标(波动率、VaR、夏普比率)
  • 技术指标(MA、RSI、MACD)
  • 投资组合分析

业务分析:

  • 趋势分析(增长率、同比、环比)
  • 群组分析
  • 漏斗分析
  • A/B 测试

科学分析:

  • 假设检验(t 检验、卡方检验、ANOVA)
  • 回归分析
  • 时间序列分析
  • 统计显著性
4. 输出

生成以下形式的结果:

  • 摘要统计:包含关键指标的表格
  • 图表:保存为 PNG 文件
  • 报告:包含分析结果的 Markdown
  • 数据:供后续使用的处理后 CSV/JSON

Python 环境

如有需要,自动初始化虚拟环境,然后执行:

cd skills/data-analysis

if [ ! -f ".venv/bin/python" ]; then
    echo "Creating Python environment..."
    ./setup.sh
fi

.venv/bin/python your_script.py

设置脚本会自动安装:pandas、numpy、scipy、scikit-learn、statsmodels,并支持中文字体。

分析场景

通用数据
import pandas as pd

# Load and summarize
df = pd.read_csv('data.csv')
summary = df.describe()
correlations = df.corr()
财务数据
# Calculate returns
df['return'] = df['price'].pct_change()

# Risk metrics
volatility = df['return'].std() * (252 ** 0.5)
sharpe = df['return'].mean() / df['return'].std() * (252 ** 0.5)
业务数据
# Group by category
grouped = df.groupby('category').agg({
    'revenue': ['sum', 'mean', 'count']
})

# Growth rate
df['growth'] = df['revenue'].pct_change()
科学数据
from scipy import stats

# T-test
t_stat, p_value = stats.ttest_ind(group_a, group_b)

# Regression
from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(X, y)

文件路径约定

临时输出(会话范围)

写入当前目录的文件将存储在会话目录中:

import time
from datetime import datetime

# Use timestamp for unique filenames (avoid conflicts)
timestamp = datetime.now().strftime('%Y%m%d_%H%M%S')

# Charts and temporary files
plt.savefig(f'analysis_{timestamp}.png')      # → $KODE_AGENT_DIR/analysis_20250115_143022.png
df.to_csv(f'results_{timestamp}.csv')        # → $KODE_AGENT_DIR/results_20250115_143022.csv

始终使用唯一文件名,以避免多次分析时发生冲突:

  • 使用时间戳:analysis_20250115_143022.png
  • 使用描述性名称 + 时间戳:sales_report_q1_2025.csv
  • 脚本使用随机后缀:script_{random.randint(1000,9999)}.py
用户数据(持久化)

使用 $KODE_USER_DIR 存储持久化用户数据:

import os
user_dir = os.getenv('KODE_USER_DIR')

# Save to user memory
memory_file = f"{user_dir}/.memory/facts/preferences.jsonl"

# Read from knowledge base
knowledge_dir = f"{user_dir}/.knowledge/docs"
环境变量
  • KODE_AGENT_DIR:用于临时输出(图表、分析结果)的会话目录
  • KODE_USER_DIR:用于持久化存储(记忆、知识、配置)的用户数据目录

最佳实践

  • 文件名必须仅包含 ASCII 字符:文件名中不得包含中文或非 ASCII 字符
  • 始终先检查数据:df.head()、df.info()、df.describe()
  • 处理缺失值:根据具体情况删除或填补
  • 检查假设条件:正态性、独立性等
  • 可视化:图表能揭示表格无法呈现的模式
  • 记录发现:说明指标及其含义
  • 使用正确路径:临时输出写入当前目录,持久化数据写入 $KODE_USER_DIR

快速参考

环境设置

此技能使用 Python 脚本。设置环境:

# Navigate to the skill directory
cd apps/assistant/skills/data-analysis

# Run the setup script (creates venv and installs dependencies)
./setup.sh

# Activate the environment
source .venv/bin/activate

设置脚本将:

  • 在 .venv/ 中创建 Python 虚拟环境
  • 安装所需的软件包(pandas、numpy、scipy、scikit-learn、statsmodels)

使用此技能环境运行 Python 脚本:

# Use the virtual environment's Python
.venv/bin/python script.py

# Or activate first, then run normally
source .venv/bin/activate
python script.py

评论

支持 Markdown