Skip to content

Qingqian-Wang/matchxlsx

Repository files navigation

故障数据分析与匹配工具

项目简介

本项目包含两个主要工具:

  1. fault_analysis.py - 售后故障数据聚类分析工具
  2. match_faults.py - 聚类故障与实验室故障匹配工具

这套工具可以帮助您分析售后故障数据,找出相似的故障模式,并将这些故障模式与实验室测试故障进行匹配,以便发现常见问题并改进产品质量。

环境要求

本项目需要Python 3.6或更高版本,并依赖以下库:

pip install -r requirements.txt

数据格式要求

两个输入数据文件(售后故障和实验室故障)都应为Excel格式(.xlsx),并包含以下列:

  • 机号
  • 故障描述
  • 故障部位

使用说明

步骤1:故障数据聚类分析

使用fault_analysis.py对售后故障数据进行聚类分析,找出相似的故障模式。

基本用法

python fault_analysis.py

参数说明

参数 简写 说明 默认值
--input -i 售后故障数据文件路径 afterservice_faults.xlsx
--output -o 输出结果文件路径 clustered_faults.xlsx
--threshold -t 故障描述相似度阈值 0.1
--min-size -m 最小聚类大小 3

示例

python fault_analysis.py --input my_faults.xlsx --output clustered_results.xlsx --threshold 0.15 --min-size 4

步骤2:与实验室故障匹配

使用match_faults.py将聚类分析结果与实验室故障数据进行匹配,找出在实验室中也出现过的故障。

基本用法

python match_faults.py

参数说明

参数 简写 说明 默认值
--clustered -c 聚类分析结果文件路径 clustered_faults.xlsx
--lab -l 实验室故障数据文件路径 lab_faults.xlsx
--output -o 输出结果文件路径 matched_lab_faults.xlsx
--threshold -t 故障描述相似度阈值 0.3

示例

python match_faults.py --clustered clustered_results.xlsx --lab lab_data.xlsx --output matches.xlsx --threshold 0.25

工作流程

  1. 准备两份Excel文件:

    • 售后故障数据(包含机号、故障描述、故障部位)
    • 实验室故障数据(包含机号、故障描述、故障部位)
  2. 运行聚类分析:

    python fault_analysis.py --input afterservice_faults.xlsx
    • 这将生成clustered_faults.xlsx文件,包含聚类后的故障,并添加"问题集编号"列
  3. 运行匹配分析:

    python match_faults.py
    • 这将生成matched_lab_faults.xlsx文件,包含与聚类故障匹配的实验室故障

算法说明

  1. 聚类分析

    • 按故障部位分组
    • 使用jieba进行中文分词
    • 使用TF-IDF向量化文本
    • 计算余弦相似度
    • 根据相似度阈值进行聚类
    • 筛选出数量超过最小聚类大小的故障集合
  2. 匹配分析

    • 对聚类结果中的每个问题集
    • 筛选相同故障部位的实验室故障
    • 计算聚类故障与实验室故障的文本相似度
    • 找出相似度超过阈值的匹配项

注意事项

  1. 相似度阈值(threshold)建议值:

    • 聚类分析:0.1-0.2(较低以捕获更多相似故障)
    • 匹配分析:0.3以上(较高以确保匹配质量)
  2. 文本预处理:

    • 程序会自动进行中文分词
    • 会移除特殊字符
    • 建议保持故障描述简洁明了
  3. 性能考虑:

    • 对于大型数据集,处理时间可能较长
    • 可以考虑按批次处理数据

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages