import numpy as np
from numpy import *
import sys
from sklearn import metrics
import pandas as pd
import matplotlib.pyplot as plt
def fit_plot_Kmean_model(X):
data = pd.read_csv(X, header=None, error_bad_lines=False)
# 必须添加header=None,否则默认把第一行数据处理成列名导致缺失
data_list = data.values.tolist()
data_list = np.array(data_list)
return data_list
def choice_center(data,k):
k=int(k)
centers = []
for i in np.random.choice(len(data), k):
centers.append(data[i])
# print("随机选取的中心点(第一次):\n", centers)
return centers
def distance(a, b):
dis = []
for i in range(len(a)):
dis.append(pow(a[i] - b[i], 2))
return sqrt(sum(dis))
def k_center(data_list,center,n_clusters,savePath):
flag = True
i = 0
a=len(data_list[0])-1
n_clusters=int(n_clusters)
while flag:
flag = False
for i in range(len(data_list)):
Python K中心点聚类kmediods聚类代码
最新推荐文章于 2024-06-30 09:24:04 发布
本文详细介绍了如何使用Python实现K-Medoids聚类算法,即PAM(Partitioning Around Medoids)方法。通过实例代码展示了如何对数据进行预处理、设定聚类数量K、运行算法并可视化结果,帮助读者理解该算法在数据挖掘中的应用。
摘要由CSDN通过智能技术生成