Back to skills
extension
Category: Data & AnalyticsNo API key required

data-statistical-tool

数据统计分析与报告生成。接收用户上传的Excel格式数据文件和分析需求,自动识别数据结构,运用专业统计方法进行数据分析,输出Word格式统计分析报告。全面覆盖描述性统计、差异性分析(t检验/方差分析/非参数检验)、相关与回归分析、问卷研究(信效度/中介调节/SEM)、综合评价(TOPSIS/DEA/熵权法)、聚类与降维、生存分析、计量研究、机器学习、时间序列预测等14大模块200+统计方法。当用户提到数据分析、统计分析、数据报告、统计检验、回归分析、方差分析、问卷分析、综合评价、聚类分析、因子分析、相关性分析、显著性检验、SPSS分析,或上传了Excel/CSV数据文件希望进行统计分析和报告生成时触发。不适用于:纯数据可视化看板生成、8D质量报告、FMEA分析、质量控制图表监控。

personAuthor: user_2c769e18hubcommunity

数据统计分析报告

基于用户上传的数据和分析需求,运用专业统计方法完成数据分析并生成Word格式统计分析报告。方法体系全面参考SPSSAU平台(spssau.com),覆盖14大统计模块。

你的工作方式

数据分析报告生成涉及以下阶段:

  1. 数据理解与需求确认 — 读取数据、识别结构、确认分析需求
  2. 方法选择与方案设计 — 匹配统计方法、制定分析方案
  3. 数据预处理 — 清洗、编码、转换
  4. 统计分析执行 — 用Python执行统计计算与检验
  5. 报告撰写与交付 — 生成Word格式分析报告

Phase 1:数据理解与需求确认

1.1 读取数据文件

接收用户上传的Excel(.xlsx/.xls/.csv)文件后:

  • 用Python(pandas)读取数据,获取:行数、列数、列名、数据类型
  • 自动识别每列的数据类型:定类(类别型,唯一值≤20且非连续数值)或定量(连续数值型)
  • 展示数据概览:样本量、变量列表及类型、缺失值统计

1.2 确认分析需求

根据用户描述和自动识别的数据结构,判断分析需求:

  • 用户明确指定方法:直接使用指定方法,确认数据格式是否符合要求
  • 用户描述研究问题:将问题拆分为X和Y,根据数据类型匹配方法(读取 references/statistical-methods.md 中的方法选择框架)
  • 用户仅提供数据未说明需求:基于数据特征推断可能的分析方向,向用户询问确认

询问用户时,提供结构化的选项而非开放式问题。示例:

我已读取您的数据(200行×15列)。识别到以下可能的 分析方向:

  1. 差异性分析 — 比较不同组别(如性别、学历)在某指标上的差异(t检验/方差分析)
  2. 相关与回归 — 分析变量间的影响关系(相关分析/线性回归/Logistic回归)
  3. 问卷信效度 — 检验量表的可靠性和有效性(Cronbach α/探索性因子分析)
  4. 综合评价 — 对多指标对象进行排名或评分(TOPSIS/熵权法/DEA)
  5. 聚类分析 — 对样本或变量进行分组(K-means/层次聚类)
  6. 描述性统计 — 仅做数据概况描述

请选择您需要的分析方向(可多选),或描述您的具体研究问题。

1.3 确认门

在执行分析前,向用户确认分析方案:

  • 列出选定的分析方法及理由
  • 说明每种方法的X/Y变量分配
  • 告知前置假设检验需求(如正态性、方差齐性)

用户确认后进入Phase 2。

Phase 2:方法选择与方案设计

2.1 方法匹配逻辑

读取 references/statistical-methods.md 获取完整方法列表。核心匹配规则:

| X 类型 | Y 类型 | 研究问题类型 | 首选方法 | |--------|--------|------------|---------| | 无 | 定类 | 数据分布 | 频数分析 | | 无 | 定量 | 数据概况 | 描述分析 | | 定类(2组) | 定量 | 组间差异 | 独立样本t检验 | | 定类(3+组) | 定量 | 组间差异 | 单因素方差分析 | | 定类 | 定类 | 关联性 | 卡方检验 | | 定量 | 定量 | 相关性 | Pearson/Spearman相关 | | 定量/定类 | 定量 | 影响关系 | 线性回归 | | 定量/定类 | 定类(2类) | 影响关系 | 二元Logit回归 | | 定量/定类 | 定类(3+类) | 影响关系 | 多元Logit回归 |

2.2 前置检验

以下分析需先执行前置检验,根据结果决定使用参数或非参数方法:

  • 差异分析:先做正态性检验→通过用参数法(t/ANOVA),不通过用非参数法(Mann-Whitney/Kruskal-Wallis)
  • 方差分析:通过正态性后,再做方差齐性检验→齐用常规ANOVA,不齐用Welch ANOVA
  • 回归分析:检验多重共线性(VIF>10需处理)和残差正态性

2.3 复合分析流程

常见的多步骤分析流程:

问卷研究标准流程:信度分析 → 效度分析(EFA) → 描述统计 → 相关分析 → 回归分析 → 中介/调节效应

综合评价流程:权重确定(AHP/熵权法/CRITIC) → 综合评分(TOPSIS/灰色关联) → 排序与分级

Phase 3:数据预处理

使用Python(pandas/scipy/statsmodels)执行以下预处理:

  1. 缺失值处理:报告缺失比例;定量变量用均值/中位数填补,定类变量用众数填补或保留为缺失
  2. 异常值检测:用IQR法(1.5倍四分位距)或Z-score法(|Z|>3)标记异常值,报告但不自动删除
  3. 数据编码:定类变量需转为数值编码(分类哑变量或标签编码)
  4. 数据转换:非正态数据可尝试对数转换(ln)、平方根转换
  5. 标准化:综合评价等方法需Z-score标准化或极差标准化
  6. 多选题编码:多选题拆分为0/1哑变量列

Phase 4:统计分析执行

4.1 执行环境

  • 语言:Python 3.12
  • 核心库:pandas, numpy, scipy.stats, statsmodels, scikit-learn, pingouin
  • 可视化:matplotlib(生成图表图片用于嵌入Word报告)
  • 安装检查:首次执行前运行 pip install pingouin statsmodels scikit-learn matplotlib 确保依赖可用

4.2 执行脚本模板

对每种分析方法,执行Python脚本完成计算。脚本模板结构:

# 1. 读取数据
import pandas as pd
df = pd.read_excel('data_path')

# 2. 执行统计检验(以独立样本t检验为例)
from scipy import stats
group1 = df[df['X'] == cat1]['Y']
group2 = df[df['X'] == cat2]['Y']
t_stat, p_value = stats.ttest_ind(group1, group2)

# 3. 生成图表
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei', 'WenQuanYi Micro Hei', 'DejaVu Sans']
# ... 生成图表并保存为图片

# 4. 输出结果到JSON供报告使用
results = {'t_statistic': t_stat, 'p_value': p_value, ...}

4.3 结果解读标准

  • p值约定:p < 0.01 标记 **(极其显著),p < 0.05 标记 *(显著),p ≥ 0.05 标记 ns(不显著)
  • 效应量:报告Cohen's d(t检验)、η²(ANOVA)、R²(回归)等效应量指标
  • 置信区间:优先报告95%置信区间
  • 自动化解读:对每个检验结果生成简明中文解读文字

4.4 常用方法执行要点

描述性统计:均值、标准差、中位数、最小值、最大值、偏度、峰度

独立样本t检验

  • 检验正态性(Shapiro-Wilk)→方差齐性(Levene)→选择等方差/不等方差t检验
  • 报告:t值、自由度、p值、均值差、Cohen's d、95%CI

单因素方差分析

  • 前置检验→ANOVA→事后多重比较(Tukey HSD/Scheffé)
  • 报告:F值、p值、η²、各组均值±标准差、事后比较结果

相关分析

  • 正态数据用Pearson,非正态用Spearman
  • 报告:相关系数r、p值、样本量

线性回归

  • 报告:R²、调整R²、F值、回归系数β、标准误、t值、p值、VIF
  • 检查:多重共线性(VIF>10)、残差正态性、残差同方差性

信度分析(Cronbach α)

  • 报告:总体α值、各题项CITC、删除该项后的α值
  • 判断:α≥0.8很好,0.7≤α<0.8较好,0.6≤α<0.7可接受,α<0.6需修订

探索性因子分析(EFA)

  • 报告:KMO值、Bartlett球形检验、因子方差贡献率、旋转后因子载荷矩阵
  • 判断:KMO≥0.7适合因子分析,变量载荷≥0.5归属清晰

Logistic回归

  • 报告:模型χ²、伪R²、OR值、Wald检验、p值、Hosmer-Lemeshow检验

聚类分析

  • 报告:聚类数目确定(肘部法则/轮廓系数)、各类特征描述、聚类可视化

综合评价方法

  • TOPSIS:报告各评价对象与正/负理想解距离、相对接近度、排名
  • 熵权法:报告各指标信息熵、权重、综合得分
  • DEA:报告各DMU效率值、规模报酬状态

Phase 5:报告撰写与交付

5.1 报告结构

使用 Word / DOCX 技能生成Word文档。报告结构如下:

# [数据统计分析报告]

## 一、研究概述
  - 研究背景与目的
  - 数据来源与样本描述
  - 分析方法总览

## 二、数据概况
  - 样本量与变量说明
  - 缺失值与异常值报告
  - 数据预处理说明

## 三、描述性统计分析
  - 定量变量描述统计表(均值±标准差、中位数、极值)
  - 定类变量频数分布表
  - 关键变量分布图

## 四、[核心分析章节](根据方法动态生成)
  - 4.1 [方法1名称]
    - 分析目的说明
    - 前置检验结果(如正态性、方差齐性)
    - 检验结果表(统计量、p值、效应量等)
    - 结果解读
    - 配图
  - 4.2 [方法2名称]
    - ...

## 五、综合结论与建议
  - 核心发现总结
  - 研究局限性
  - 改进建议

5.2 报告格式规范

  • 字体:正文宋体/仿宋 12pt,标题黑体 14-16pt
  • 表格:三线表格式,表头加粗,表序+表名在表上方
  • 图表:图序+图名在图下方,中文标签,配色统一
  • 统计符号:斜体(p, t, F, r, R²),希腊字母斜体(α, β, η²)
  • 显著性标注p < 0.05 用 * 标注,p < 0.01 用 ** 标注
  • 编号:表1-1、图1-1 格式

5.3 图表生成与嵌入

  • 用matplotlib生成统计图表,保存为PNG到 /sandbox/workspace/outputs/
  • 图表类型选择:
    • 差异分析→柱状图(均值±误差棒) 或箱线图
    • 相关分析→散点图+回归线 或相关系数热力图
    • 回归分析→残差图、回归系数森林图
    • 聚类分析→散点图(按聚类着色)、树状图
    • 频数分析→饼图或柱状图
    • 生存分析→K-M生存曲线
    • 综合评价→雷达图或排名柱状图

5.4 交付

  • Word文件保存到 /sandbox/workspace/outputs/
  • provide_file 工具提供下载链接
  • 如用户要求修改,进入多轮修改模式

多轮修改

用户可能要求修改报告。常见修改类型:

  • 增减分析方法:回到Phase 2-4,补充执行新方法并更新报告
  • 调整变量/分组:重新执行Phase 4并更新对应章节
  • 修改报告内容:直接编辑Word文档中对应部分
  • 调整图表:重新生成图表并替换

修改时只更新受影响的章节,避免全量重写。

工作流示例

示例1:问卷调查数据分析

用户输入:上传问卷数据Excel(200份问卷,含人口统计学+5个量表共25题),要求"帮我分析这份问卷数据"

执行流程

  1. 读取数据,识别定类变量(性别、学历等)和定量变量(量表题项1-25)
  2. 向用户确认:推荐问卷研究标准流程(信度→效度→描述→差异→相关→回归)
  3. 执行Cronbach α信度检验(各量表α均>0.7)
  4. 执行EFA效度检验(KMO>0.7,提取因子与理论维度一致)
  5. 描述统计(各维度均值、标准差)
  6. 差异分析(性别t检验、学历ANOVA)
  7. 相关分析(各维度间Pearson相关)
  8. 线性回归(某维度为因变量)
  9. 生成含8个章节的Word报告

示例2:综合评价分析

用户输入:上传各城市经济数据Excel(30个城市,8个经济指标),要求"对这些城市的经济发展水平进行综合评价"

执行流程

  1. 读取数据,识别8个定量指标
  2. 向用户确认:推荐熵权法+TOPSIS综合评价流程
  3. 数据标准化(极差标准化)
  4. 熵权法计算各指标权重
  5. TOPSIS计算各城市与正/负理想解距离及相对接近度
  6. 排序并分级(前30%为优,中间40%为中,后30%为差)
  7. 生成含排名表、雷达图、柱状图的Word报告

资源目录

scripts/

run_analysis.py — 数据分析执行脚本,包含常用统计方法的封装函数,直接执行无需加载到上下文。

references/

statistical-methods.md — 统计分析方法完整参考手册(14大模块200+方法详表),当需要选择分析方法、判断方法适用性或确认数据格式要求时,读取此文件。

assets/

本技能不使用assets目录。