Skip to content

interestingexcting/-

 
 

Repository files navigation

📊 交互式Excel数据分析工具

🎯 项目简介

这是一个智能的命令行Excel数据分析工具,能够自动识别数据结构,提供交互式维度选择,并生成详细的环比对比报告。

✨ 核心功能

  • 🔍 智能列识别: 自动区分维度列(文本)和指标列(数值)
  • 📅 日期驱动: 根据输入日期自动查找对应的Excel文件
  • 🎮 交互式选择: 命令行界面让您轻松选择分析维度
  • 📈 环比分析: 自动计算月度环比增长率和变化量
  • 🛡️ 错误处理: 完善的异常处理机制,确保程序稳定运行

📋 系统要求

  • Python 3.6+
  • pandas
  • openpyxl

🚀 快速开始

1. 安装依赖

# Ubuntu/Debian系统
sudo apt update
sudo apt install python3-pandas python3-openpyxl

# 或使用pip(如果允许)
pip3 install pandas openpyxl

2. 准备数据文件

确保您的Excel文件遵循以下命名规则:

数据_YYYY-MM-DD.xlsx

例如:

  • 数据_2023-10-31.xlsx (本月数据)
  • 数据_2023-09-30.xlsx (上月数据)

3. 运行分析工具

python3 data_analyzer.py

4. 使用示例

程序运行后,按照提示操作:

1. 输入本月末日期: 2023-10-31
2. 输入上月末日期: 2023-09-30
3. 选择分析维度: 1,2 (选择产品线和所属区域)
4. 查看分析结果

📊 数据格式要求

Excel文件结构示例

产品线 所属区域 风险等级 风险金额 风险笔数 客户数量
产品线A 华东区 低风险 125000.50 25 18
产品线B 华南区 中风险 89000.00 12 35

列类型识别规则

  • 维度列(Dimension): 文本类型数据,用于分组分析

    • 数据类型:object, string
    • 示例:产品线、区域、等级等
  • 指标列(Metric): 数值类型数据,用于汇总计算

    • 数据类型:int64, float64, int32, float32
    • 示例:金额、数量、笔数等

🔧 测试工具

项目包含完整的测试套件:

生成测试数据

python3 create_test_data.py

运行功能测试

python3 test_analyzer.py

📈 输出结果示例

分析完成后,您将看到如下格式的结果:

================================================================================
📈 数据对比分析结果
================================================================================
 产品线  所属区域  风险金额_上月  风险金额_本月  风险金额_变化  风险金额_环比(%)  ...
产品线A   华东区   2640684.26   1419765.24  -1220919.02        -46.23     ...
产品线A   华北区   2941708.03    779605.53  -2162102.50        -73.50     ...
================================================================================
📊 数据汇总信息:
   总维度组合数: 16
   风险金额_环比(%): 增长(9) | 下降(7) | 持平(0)
   风险笔数_环比(%): 增长(9) | 下降(7) | 持平(0)
   客户数量_环比(%): 增长(11) | 下降(5) | 持平(0)
================================================================================

🛠️ 高级功能

自定义文件路径

如果您的文件不在当前目录,可以修改 generate_filename 方法来适配您的文件路径结构。

处理特殊情况

  • 缺失数据: 自动用0填充缺失值
  • 除零错误: 智能处理分母为0的环比计算
  • 数据类型: 自动转换数值类型,处理异常值

保存结果

程序会询问是否保存分析结果到Excel文件:

分析结果_2023-10-31_vs_2023-09-30.xlsx

📁 项目文件结构

├── data_analyzer.py      # 主程序文件
├── create_test_data.py   # 测试数据生成器
├── test_analyzer.py      # 功能测试脚本
├── README.md            # 项目说明文档
├── 数据_2023-09-30.xlsx  # 示例上月数据
└── 数据_2023-10-31.xlsx  # 示例本月数据

🐛 常见问题

Q: 提示"文件不存在"怎么办?

A: 检查文件名格式是否正确,确保为数据_YYYY-MM-DD.xlsx格式。

Q: 没有识别到维度列或指标列?

A: 检查数据类型,确保文本列为object类型,数值列为int或float类型。

Q: 环比计算结果异常?

A: 检查上月数据是否包含0值,程序会自动处理这种情况。

🤝 贡献指南

欢迎提交Issue和Pull Request来改进这个工具!

📄 许可证

MIT License


享受数据分析的乐趣! 🎉

About

用python的turtle库画一个小猪佩奇

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 100.0%