back
loading skill details...
提供Python数据清洗、描述性统计、分组聚合及基础可视化建议,辅助业务与科研数据的快速标准化分析。
---
slug: py-data-analyzer-free
name: py-data-analyzer-free
version: 1.0.0
displayName: Python数据分析(免费版)
summary: 提供Python数据清洗、统计分析与可视化建议,覆盖业务报表与科研数据的快速处理流程。
license: Proprietary
edition: free
description: Python数据分析免费版是一套面向独立开发者与初级数据分析师的 Python 数据处理知识库,帮助用户在日常工作中快速完成数据清洗、统计分析与可视化建议。核心能力:提供缺失值处理、异常值识别、数据类型转换等清洗模式;描述性统计、相关性分析、分组聚合等分析方法;折线图、柱状图、散点图、热力图等可视化建议
tags:
- 数据分析
- 集成工具
- Python
- 免费版
tools:
- - read
- exec
homepage: https://skillhub.cn
pricing_tier: L3
pricing_model: per_use
suggested_price: 29.9
tools: ["read", "write", "exec", "glob"]
tags: "数据处理,数据分析,工具"
---
# Python数据分析(免费版)
## 概述
数据分析是业务决策与科研探索的核心环节,但很多初学者在面对一份新数据时不知从何下手:是先看分布还是先看缺失?该用柱状图还是饼图?相关系数多少才算强相关?本助手将数据分析流程标准化为"理解-清洗-分析-可视化-结论"五个阶段,帮助用户系统性地完成分析任务。
本免费版聚焦于**日常业务与科研最高频的分析场景**:数据清洗、描述性统计、分组聚合、基础可视化。每个阶段均提供可运行的 pandas 代码片段与设计要点。
## 核心能力
### 能力一:数据理解与质量评估
拿到数据后的第一件事不是急着分析,而是理解数据的整体情况。本助手提供数据概览模板,包括行列数、数据类型、缺失率、唯一值数等。
| 评估维度 | 检查方法 | 关注点 |
|----|----|---|
| 数据规模 | df.shape | 行数是否足够支持统计 |
| 数据类型 | df.dtypes | 数值型是否被识别为字符串 |
| 缺失情况 | df.isnull().mean() | 缺失率是否影响分析 |
| 重复数据 | df.duplicated().sum() | 是否存在完全重复行 |
| 分布概览 | df.describe() | 数值范围是否合理 |
**输入**: 用户提供能力一:数据理解与质量评估所需的指令和必要参数。
**处理**: 解析能力一:数据理解与质量评估的输入参数,完成核心逻辑,返回结构化响应。
**输出**: 返回能力一:数据理解与质量评估的响应数据,包含状态码、结果和日志。
### 能力二:数据清洗与预处理
真实数据往往存在缺失值、异常值、类型错误等问题。本助手提供常用的清洗模式与决策建议。
**输入**: 用户提供能力二:数据清洗与预处理所需的指令和必要参数。
**处理**: 解析能力二:数据清洗与预处理的输入参数,完成核心逻辑,返回结构化响应。
**输出**: 返回能力二:数据清洗与预处理的响应数据,包含状态码、结果和日志。
- 执行此能力时使用`input_params`参数,支持创建/查询/导出操作
### 能力三:描述性统计分析
提供均值、中位数、分位数、方差等统计量计算,以及分组聚合、交叉表等分析模式。
**输入**: 用户提供能力三:描述性统计分析所需的指令和必要参数。
**处理**: 解析能力三:描述性统计分析的输入参数,完成核心逻辑,返回结构化响应。
**输出**: 返回能力三:描述性统计分析的响应数据,包含状态码、结果和日志。
- 执行此能力时使用`input_params`参数,支持创建/查询/导出操作
### 能力四:基础可视化建议
根据数据类型与分析目的,推荐合适的图表类型并提供 matplotlib/seaborn 代码示例。
**输入**: 用户提供能力四:基础可视化建议所需的指令和必要参数。
**处理**: 解析能力四:基础可视化建议的输入参数,完成核心逻辑,返回结构化响应。
**输出**: 返回能力四:基础可视化建议的响应数据,包含状态码、结果和日志。
- 执行此能力时使用`input_params`参数,支持创建/查询/导出操作
**能力覆盖范围**:本skill的核心能力覆盖以下场景关键词:Python、统计分析与可视化、覆盖业务报表与科、研数据的快速处理、数据分析免费版是、一套面向独立开发、者与初级数据分析、数据处理知识库、帮助用户在日常工、作中快速完成数据、核心能力、提供缺失值处理、异常值识别、数据类型转换等清、相关性分析、分组聚合等分析方、折线图、柱状图、散点图、热力图等可视化建等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。
## 使用场景
### 场景一:销售数据月度报表
每月初汇总上月销售数据,生成销售额、订单量、客单价等核心指标的趋势图与同比环比对比。
### 场景二:用户行为探索性分析
新上线的功能用户使用情况如何?通过分组聚合与可视化,发现用户行为模式与潜在问题。
### 场景三:科研数据预处理
实验数据需要进行清洗、归一化、异常值剔除后才能进入统计建模阶段。本助手提供标准化的预处理流程。
### 场景四:A/B 测试结果分析
对比两个 variant 的核心指标差异,计算显著性,给出结论建议。
## 不适用场景
以下场景Python数据分析(免费版)不适合处理:
- 实时流数据处理
- 小规模数据手动分析
- 非结构化文本情感分析
## 触发条件
需要数据分析、报表生成、统计洞察、数据可视化时使用。不适用于非本工具能力范围的需求。
## 快速开始
1. 阅读## 核心能力章节了解skill功能
2. 按## 依赖说明配置环境
3. 执行所需能力对应的命令
4. 参考## 错误处理章节处理异常
5. 查看## FAQ解答常见疑问
本助手为知识库型 Skill,无需安装额外依赖(假设已安装 Python 与 pandas)。直接在 Agent 对话中描述你的分析需求即可获取代码与建议。
**典型提问模板**:
## 输入格式
| 参数名 | 类型 | 必填 | 说明 |
|:-----|:-----|:-----|:-----|
| input | string | 是 | Python数据分析(免费版)处理的输入数据或指令 |
| options | object | 否 | 附加配置选项,如模式选择、格式偏好等 |
| callback_url | string | 否 | 异步处理完成后的回调通知URL |
```
我有一份销售数据 CSV,包含日期、商品、金额、用户ID,帮我分析月度销售趋势
```
```
我的数据有 20% 的缺失值,该怎么处理?
```
```
我想对比两个用户群体的行为差异,用什么图表比较合适?
```
Agent 会根据需求匹配对应的分析模式,输出"数据理解 → 清洗建议 → 分析代码 → 可视化方案 → 结论模板"五段式回答。
## 示例
### 数据概览模板
```python
import pandas as pd
# ...
def overview_data(df):
"""数据概览:规模、类型、缺失、分布"""
print(f"数据规模: {df.shape[0]} 行, {df.shape[1]} 列")
print(f"\n数据类型:\n{df.dtypes}")
print(f"\n缺失率:\n{(df.isnull().mean() * 100).round(2)}")
print(f"\n重复行: {df.duplicated().sum()}")
print(f"\n数值字段统计:\n{df.describe()}")
print(f"\n分类字段统计:\n{df.describe(include='object')}")
# ...
# 使用示例
df = pd.read_csv('sales.csv')
overview_data(df)
```
### 缺失值处理决策表
```python
def handle_missing(df, col, strategy='auto'):
"""根据缺失率选择处理策略"""
missing_rate = df[col].isnull().mean()
# ...
if missing_rate == 0:
return df
elif missing_rate < 0.05:
# 低缺失率:中位数填充(数值)或众数填充(分类)
if df[col].dtype in ['int64', 'float64']:
df[col].fillna(df[col].median(), inplace=True)
else:
df[col].fillna(df[col].mode()[0], inplace=True)
elif missing_rate < 0.30:
# 中等缺失率:标记 + 填充
df[col + '_is_missing'] = df[col].isnull()
df[col].fillna(df[col].median(), inplace=True)
else:
# 高缺失率:考虑删除列
print(f"警告: {col} 缺失率 {missing_rate:.0%},建议删除该列")
# ...
return df
```
### 分组聚合分析
```python
# 月度销售趋势
df['date'] = pd.to_datetime(df['date'])
df['month'] = df['date'].dt.to_period('M')
# ...
monthly = df.groupby('month').agg(
revenue=('amount', 'sum'),
orders=('order_id', 'count'),
avg_order_value=('amount', 'mean')
).round(2)
# ...
print(monthly)
```
### 可视化推荐
| 分析目的 | 数据类型 | 推荐图表 | seaborn 函数 |
|---:|---:|---:|---:|
| 趋势变化 | 时间序列 | 折线图 | sns.lineplot |
| 对比差异 | 分类×数值 | 柱状图 | sns.barplot |
| 关系探索 | 数值×数值 | 散点图 | sns.scatterplot |
| 分布形态 | 单数值 | 直方图 | sns.histplot |
| 占比构成 | 分类 | 饼图 | plt.pie |
| 多维相关 | 多数值 | 热力图 | sns.heatmap |
## 最佳实践
### 实践一:先理解再清洗
不要一上来就填充缺失值。先理解数据来源与含义,某些缺失本身可能有业务含义(如"用户未填写"可能代表新用户)。
### 实践二:保留原始数据
清洗时建议新建列或新 DataFrame,保留原始数据。一旦发现清洗逻辑有误,可以快速回退。
### 实践三:异常值先调查再处理
异常值不一定是错误数据,可能是真实业务现象(如大客户订单)。处理前先与业务方确认,避免误删有价值的信息。
### 实践四:可视化先看整体再看细节
先用直方图、箱线图看整体分布,再用分组对比看细节。避免一上来就钻进细节而忽略全局模式。
### 实践五:结论要可执行
分析结论不应只描述"销售额下降了 20%",而应给出"XX 类商品销售额下降是主因,建议关注 XX 环节"的可执行建议。
### 实践六:代码要可复现
使用函数封装常用分析逻辑,固定随机种子,确保他人能复现你的分析结果。
## 错误处理
| 错误场景(症状) | 可能原因 | 排查方法 | 对策 | 处理方式 |
|:-------:|:-------:|:-------:|:-------:|:-------:|
| 读取 CSV 报错 | 编码问题 | 尝试 encoding='gbk' | 指定正确编码 | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
| 数值列被识别为字符串 | 千分位逗号或特殊符号 | 查看 dtype | 用 astype 转换 | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
| 分组聚合结果异常 | 分组键存在空值 | 检查分组列缺失 | dropna 或填充 | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
| 图表中文乱码 | 字体不支持中文 | 设置中文字体 | plt.rcParams 设置 | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
| 内存不足 | 数据量过大 | 查看 df.memory_usage | 分块读取或降精度 | 对照依赖说明章节逐项验证配置项,确认环境变量已正确设置后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令 |
## 常见问题
### Q1:缺失值应该删除还是填充?
取决于缺失率与业务含义。缺失率 <5% 可填充;5%-30% 建议标记+填充;>30% 建议删除列。业务上有含义的缺失应保留为独立类别。
### Q2:异常值如何识别?
常用方法:3σ 原则(正态分布)、IQR 法(箱线图)、业务规则(如金额为负)。识别后需人工判断是错误数据还是真实业务现象。
### Q3:相关系数多少算强相关?
|相关系数|>0.7 为强相关,0.3-0.7 为中等相关,<0.3 为弱相关。但相关性不等于因果性,需结合业务逻辑判断。
### Q4:什么数据适合什么图表?
时间序列用折线图,分类对比用柱状图,关系探索用散点图,分布形态用直方图,占比构成用饼图。避免用饼图展示超过 5 个类别。
### Q5:pandas 处理大数据很慢怎么办?
考虑使用 dtype 优化(int64 降为 int32)、分类类型(category)、分块读取(chunksize)、或换用 polars / DuckDB 等更高效的库。
### Q6:如何让图表更专业?
使用 seaborn 默认主题、统一配色方案、添加标题与轴标签、移除顶部右侧边框、合理设置图表尺寸。避免使用默认的 matplotlib 样式。
## 依赖说明
### 运行环境
- **Agent 平台**: 支持SKILL.md的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
- **操作系统**: Windows / macOS / Linux
- **Python**: 3.8+
### 依赖详情
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|:------|------:|:------|:------|
| LLM API | API | 必需 | 由Agent平台内置LLM提供 |
| pandas | 库 | 必需 | pip install pandas |
| numpy | 库 | 必需 | pip install numpy |
| matplotlib | 库 | 推荐 | pip install matplotlib |
| seaborn | 库 | 推荐 | pip install seaborn |
### API Key 配置
- 本免费版为纯知识库型 Skill,自身不需要 API Key
- 若分析涉及外部数据源 API(如数据库、云存储),相关凭据由用户自行配置于环境变量中
- 禁止在 SKILL.md 或脚本中硬编码数据源凭据
### 可用性分类
- **分类**: MD+EXEC(纯Markdown指令,部分功能需要exec命令行执行Python代码)
- **说明**: 基于Markdown的AI Skill,通过自然语言指令驱动Agent输出数据分析代码与建议
## 已知限制
本免费体验版限制以下高级功能:
- 机器学习建模与预测分析(仅专业版提供)
- 时间序列预测与季节性分解(仅专业版提供)
- 多维数据透视与交互式仪表盘(仅专业版提供)
- 大数据处理(Dask / Spark 集成)(仅专业版提供)
- 自动化报表生成与调度(仅专业版提供)
解锁全部功能请使用专业版:py-data-analyzer-pro
- 当前为免费版本,如需完整功能请升级到付费版获取全部能力
## 输出格式
```json
{
"success": true,
"data": {
"result": "Python数据分析(免费版)处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "py data analyzer"
}
},
"execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
"error": null
}
```
don't have the plugin yet? install it then click "run inline in claude" again.