[Excel]k-means聚類算法的應用,以評價現有供應商的水平為例。

2023-10-13 22:59

本文主要是介绍[Excel]k-means聚類算法的應用,以評價現有供應商的水平為例。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

聚類算法系列中,k-means聚類算法是基礎,其屬於非監督式分類算法( Unsupervised Classification)。

所謂"非監督式",即是針對一堆未知標籤的數據集做分類,結果只會告知哪些數據屬於同一群體。換句話說,只有一堆輸入數據,但無定義輸出變量,常應用於對既有數據的內在分類的探討,如對顧客購買行為的分類。

k-means聚類算法的原理,係利用數據與和質心的歐式距離為判斷依據,不斷迭代直到預設收斂值,最終取得分類結果。其中輸入變量如下:

1.預計劃分為多少群體,即k值。

2.給訂初始質心值。

3.預設收斂值,一般可用新質心和舊質心的距離小於多少來定義。

 

在企業營運中,供應商的優劣對公司營運有著舉足輕重的角色,因此各產業的質量體系中,往往有一個章節提及供應商評價的內容,如同IATF16949和ISO9001質量體系。一般會以三項指標QCD來評價供應商的優劣。

  Q:數據來源可以是由不良批次、客訴件數或是產線停線頻次的權重組合轉換而來。

  C:數據來源可以是原物料單價或每年配合降價的幅度的權重組合轉換而來。

  D:數據來源可以是準時卻未達量或是準時按量的頻次的權重組合轉換而來。

前提是各供應商的數據基礎必須一致,分析結果才有參考價值。

 

假設供應商的原始評價數據如表一,其分數定義為,該項指標越有競爭力,分數越高,滿分100分。

表一

 

a.為了避免各項指標可能因絕對數據差異過大而造成結果失真,針對表一的原始數據做歸一化處理。該案例的三項指標滿分均為100分,因此若不做歸一化前處理,也不影響結果。歸一化結果如表二。

表二

 

b.將表二的數據繪製成圖,如圖一所示。其中圓球體積為三項指標的總和(sum),換言之,由圖一可知,D供應商的綜合表最佳。

圖一

 

換個角度,A和C供應商的Quality分數最低,B供應商的Cost分數最低,均屬於單項指標較無競爭力的群體。

圖二

 

c.該案例預計將現有供應商分為三個群體(k=3),同時初始值挑選原則為最大值、中位數和最小值,因此D,E,J分別是三個水平的初始樣本。

表三

 

經過上述初始值與各個數據的距離計算,第一次計算結果,如表四所示。[OS: 數據是我用亂數產生器給的,大部分供應商都屬於Medium,挺接近現實狀態~]

表四

 

以表四的結果,重新計算三個群組的質心,如表五所示。

表五

 

一樣計算新質心和各個數據的距離,有表六結果可知,雖然質心優化後,分類結果沒有變化。[OS: 有興趣的讀者,還可以繼續迭代下去~~]

表六

 

討論:

1.或許眼尖的讀者會發現A和C供應商的Quality均為20,為所有供應商中最低分,但為何 A供應商屬於High level group,而C供應商屬於Low level group? 原因就出在k-means聚類算法是以在三維空間下,各個數據點與質心的距離來判斷歸屬群體,換言之,看的是QCD的綜合結果。

2.上述僅是利用k-means對既有供應商做聚類分析,在實際運作上,針對三項指標(QCD)進一步以層別法分類,將可有助標示出各個供應商的強項。

-----如果文章對您有幫助,打開微信掃一掃,請作者喝杯咖啡。-----

这篇关于[Excel]k-means聚類算法的應用,以評價現有供應商的水平為例。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/206447

相关文章

Python进行JSON和Excel文件转换处理指南

《Python进行JSON和Excel文件转换处理指南》在数据交换与系统集成中,JSON与Excel是两种极为常见的数据格式,本文将介绍如何使用Python实现将JSON转换为格式化的Excel文件,... 目录将 jsON 导入为格式化 Excel将 Excel 导出为结构化 JSON处理嵌套 JSON:

Python使用openpyxl读取Excel的操作详解

《Python使用openpyxl读取Excel的操作详解》本文介绍了使用Python的openpyxl库进行Excel文件的创建、读写、数据操作、工作簿与工作表管理,包括创建工作簿、加载工作簿、操作... 目录1 概述1.1 图示1.2 安装第三方库2 工作簿 workbook2.1 创建:Workboo

SpringBoot集成EasyPoi实现Excel模板导出成PDF文件

《SpringBoot集成EasyPoi实现Excel模板导出成PDF文件》在日常工作中,我们经常需要将数据导出成Excel表格或PDF文件,本文将介绍如何在SpringBoot项目中集成EasyPo... 目录前言摘要简介源代码解析应用场景案例优缺点分析类代码方法介绍测试用例小结前言在日常工作中,我们经

SpringBoot+EasyPOI轻松实现Excel和Word导出PDF

《SpringBoot+EasyPOI轻松实现Excel和Word导出PDF》在企业级开发中,将Excel和Word文档导出为PDF是常见需求,本文将结合​​EasyPOI和​​Aspose系列工具实... 目录一、环境准备与依赖配置1.1 方案选型1.2 依赖配置(商业库方案)二、Excel 导出 PDF

使用Python删除Excel中的行列和单元格示例详解

《使用Python删除Excel中的行列和单元格示例详解》在处理Excel数据时,删除不需要的行、列或单元格是一项常见且必要的操作,本文将使用Python脚本实现对Excel表格的高效自动化处理,感兴... 目录开发环境准备使用 python 删除 Excphpel 表格中的行删除特定行删除空白行删除含指定

Java中的雪花算法Snowflake解析与实践技巧

《Java中的雪花算法Snowflake解析与实践技巧》本文解析了雪花算法的原理、Java实现及生产实践,涵盖ID结构、位运算技巧、时钟回拨处理、WorkerId分配等关键点,并探讨了百度UidGen... 目录一、雪花算法核心原理1.1 算法起源1.2 ID结构详解1.3 核心特性二、Java实现解析2.

Java easyExcel实现导入多sheet的Excel

《JavaeasyExcel实现导入多sheet的Excel》这篇文章主要为大家详细介绍了如何使用JavaeasyExcel实现导入多sheet的Excel,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录1.官网2.Excel样式3.代码1.官网easyExcel官网2.Excel样式3.代码

SpringBoot中4种数据水平分片策略

《SpringBoot中4种数据水平分片策略》数据水平分片作为一种水平扩展策略,通过将数据分散到多个物理节点上,有效解决了存储容量和性能瓶颈问题,下面小编就来和大家分享4种数据分片策略吧... 目录一、前言二、哈希分片2.1 原理2.2 SpringBoot实现2.3 优缺点分析2.4 适用场景三、范围分片

Java Web实现类似Excel表格锁定功能实战教程

《JavaWeb实现类似Excel表格锁定功能实战教程》本文将详细介绍通过创建特定div元素并利用CSS布局和JavaScript事件监听来实现类似Excel的锁定行和列效果的方法,感兴趣的朋友跟随... 目录1. 模拟Excel表格锁定功能2. 创建3个div元素实现表格锁定2.1 div元素布局设计2.

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.