name: python-data-analysis version: 1.4.0 description: | 拿到一堆数据不知道怎么分析?丢数据进来,自动生成Python分析代码并执行,输出可视化图表和结论。统计建模、时间序列、机器学习全覆盖。不用你会写代码,只要会提问就行。 触发词:数据分析、Python分析、统计分析、数据可视化、数据建模、回归分析、相关性分析、数据清洗、机器学习、聚类分析、预测分析、数据报告 排除:纯Python编程(无数据)、Excel操作(用excel_master)、数据库管理、网页爬虫
推荐访问7w4.net获取更多AI技能。
分析类型词: - 描述统计、均值、方差、分布、频次、交叉表 - 假设检验、t检验、卡方检验、ANOVA、p值、显著性 - 回归分析、线性回归、逻辑回归、R²、预测 - 聚类分析、K-Means、肘部法则、轮廓系数 - 相关性分析、协方差、Pearson、Spearman - 时间序列、趋势、季节性、ARIMA、预测 - 数据清洗、缺失值、异常值、去重、标准化
动作词: - 分析、做个分析、分析一下、数据报告 - 可视化、画图、制图、生成图表 - 建模、训练模型、预测 - 对比分析、差异分析、同比环比
场景词: - CSV分析、Excel数据分析、JSON解析 - 用户分析、销售分析、运营分析 - A/B测试结果分析、问卷分析
输入:用户分析需求 处理: 1. 识别分析类型:描述统计/假设检验/回归/聚类/时间序列 2. 确认数据来源:文件路径/URL/模拟数据 3. 确认输出要求:图表数量/格式/报告深度 校验: - 数据源是否存在且可读 - 分析类型是否支持 - 数据量是否合理(>10行) 输出:确认的分析计划
处理:
1. 读取数据(自动识别格式:CSV/Excel/JSON/Clipboard)
2. 输出数据概览:shape/dtypes/缺失值/基本统计
3. 识别数据质量问题
校验:
- 文件编码(UTF-8/GBK/ISO)
- 列名是否规范
- 数据类型是否符合分析需求
异常处理:
- 编码错误:自动尝试UTF-8/GBK/Latin1
- 缺失值:报告缺失率(<5%警告,>30%建议删除)
- 离群值:使用IQR/Z-score检测
输出:数据质量报告
处理: 1. 根据分析类型生成Python代码 2. 代码必须包含:import/数据加载/分析/可视化/保存 3. 添加异常处理和日志输出 代码规范:
- 依赖库:pandas/numpy/matplotlib/seaborn/scipy/sklearn/statsmodels
- 图表风格:seaborn白色主题,中文显示
- 图表DPI:150,保存为PNG
- 中文配置:plt.rcParams['font.sans-serif'] = ['SimHei']
校验: - 代码语法正确 - 依赖库完整 - 可视化配置正确 输出:可执行Python代码
处理: 1. 执行代码,超时60秒 2. 检查执行结果 3. 如出错,自动修正重试(最多3次) 4. 根据中间结果调整分析方向 分支处理: - 执行成功 → 进入Step 5 - 执行失败 → 输出错误信息,询问用户是否重试 - 超时 → 分批处理或采样 输出:执行结果和图表
处理: 1. 生成可视化图表(保存PNG到output目录) 2. 输出分析结论(自然语言总结) 3. 提供数据驱动建议 质量检查: - 图表是否清晰可读 - 结论是否有数据支撑 - 建议是否可执行 输出:完整分析报告
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 快速分析报告 | {分析目标}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
## 数据概览
样本量:{N} | 特征数:{M}
## 核心发现
{发现1}({数据支撑})
{发现2}({数据支撑})
## 图表
{图表1} | {图表2}
## 结论
{一句话总结}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📊 数据分析报告 | {分析目标}
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
## 数据概览
- 样本量:{N} | 特征数:{M}
- 缺失率:{X}%
- 数据类型分布:{分布}
## 质量检查
- ✅ 编码:UTF-8
- ✅ 缺失值:{处理方式}
- ⚠️ 离群值:{检测数量}个(已{处理方式})
## 核心发现
1. **{发现1标题}**
- 数据:{具体数值}
- 解读:{含义}
2. **{发现2标题}**
- 数据:{具体数值}
- 解读:{含义}
3. **{发现3标题}**
- 数据:{具体数值}
- 解读:{含义}
## 统计分析
| 指标 | 数值 | 显著性 |
|------|------|--------|
| {指标1} | {值} | {p值} |
| {指标2} | {值} | {p值} |
## 可视化图表
{图表列表(含文件路径)}
## 建议
1. **{建议1}**
- 依据:{数据支撑}
- 执行:{具体步骤}
2. **{建议2}**
- 依据:{数据支撑}
- 执行:{具体步骤}
## 技术附录
- 分析代码:`analysis_{timestamp}.py`
- 执行时间:{耗时}秒
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
| 异常 | 处理方式 |
|---|---|
| 文件不存在 | 提示检查路径 |
| 编码错误 | 自动尝试多种编码 |
| 列名冲突 | 自动重命名 |
| 数据类型错误 | 尝试转换,失败则跳过 |
| 除零错误 | 返回NaN并提示 |
| 图表生成失败 | 输出纯文本表格替代 |
输入:分析这份销售数据,找出影响业绩的关键因素 输出: 1. 加载数据,完成概览输出 2. 相关性分析,生成热力图 3. 回归分析,识别显著因素 4. 输出完整报告
输入:分析一下 输出: 请提供更多信息: 1. 数据来源?(文件路径/粘贴数据/模拟演示) 2. 分析目标?(描述统计/找规律/预测/对比) 3. 输出要求?(图表/报告/详细程度)
输入:分析这个CSV,但有30%的缺失值 输出: 数据质量警告: - 缺失率:30%(偏高) 建议: 1. 删除缺失率>50%的列 2. 对数值列用中位数填充 3. 对分类列用众数填充 是否按建议处理?
输入:只有5行数据,也要分析 输出: 数据量警告:样本量仅5条 - 统计结论可能不显著 - 建议增加样本量 是否继续分析?(结果仅供参考)
中文输出
| 借口 | 正确做法 |
|---|---|
| "数据量小,跳过数据质量检查直接分析" | 必须完成Step 2数据探查:输出shape/dtypes/缺失值/基本统计,即使数据量<100行也要执行 |
| "缺失值直接dropna删掉就好" | 必须先报告缺失率,<5%可删除,5-30%需评估填充策略,>30%必须告知用户并建议处理方案 |
| "图表用matplotlib默认样式就行" | 必须配置:seaborn白色主题、DPI=150、中文SimHei字体、合理的图表尺寸,禁止使用默认样式 |
| "分析结论写'数据整体呈上升趋势'就行" | 每条结论必须有具体数据支撑(数值+百分比),禁止无数据引用的笼统描述 |
| "代码报错了就告诉用户执行失败" | 执行失败必须自动修正重试(最多3次),常见错误(编码/类型转换/缺失值)应自动处理 |
| "相关性分析看看热力图就够了" | 如用户要求深度分析,必须补充统计检验(p值)、回归分析(R²)、异常值检测(IQR/Z-score) |
| "数据量超过100MB,拒绝分析" | 100MB-1GB应自动采样分析并在报告中说明采样策略,只有>1GB才拒绝并建议分批方案 |
这个Skill质量较好,文档结构完整,触发条件和输出格式定义清晰。优点是边界处理细致、反向示例实用、代码规范明确,能有效指导数据分析工作。不足之处是文档有些冗余,部分内容重复出现,且README里带有广告推销信息,不够专业。总体来说功能覆盖全面,但对于普通用户而言缺少可直接运行的示例,实际使用前需要一定学习成本。