聚类练习3——k-means 聚类
2016-08-17 13:37
169 查看
数据任然选择聚类分析2中数据;
程序用python编程。
准备
%将maltab中将m数据文件转化为txt文本文件。
程序
#------------------导入读取数据
程序用python编程。
准备
%将maltab中将m数据文件转化为txt文本文件。
程序
#------------------导入读取数据
import numpy as np fi=open("D:\\alsun\data.txt") lin=fi.readlines() fi.close() data=np.ones([100,200]) for i,lines in enumerate(lin): data[i][:]=lines.split("\t") data1=zip(*data) #data2=[i for i in data1] data2=list(data1) data3=np.array(data2)
#------------距离矩阵计算 ycdata=np.zeros([200,200]) for i in range(200): for j in range(200): dc=data3[i]-data3[j] dc=dc**2 dt=sum(dc) dt=dt**0.5 ycdata[i][j]=dt z=[0,1] err=1 n=1 u=np.ones([2,200])
#-----------k-means算法 while err>0.05: n=n+1 m=[ycdata[line] for line in z] u[0][:]=list(map(int,(m[1]>m[0]))) u[1][:]=list(map(int,(m[1]<=m[0]))) sum1=np.inner(m,u) sum2=sum1[1][1]+sum1[0][0] err=sum2-err sort1=[] sort2=[] for i,j in enumerate(u[0][:]): summ=0 if j: sum3=np.inner(u[0][:],ycdata[i][:]) sort1.append(sum3) else: sum4=np.inner(u[1][:],ycdata[i][:]) sort2.append(sum4) sum5=np.sort(sort1) sum6=np.sort(sort2) z[0]=list(sort1).index(sum5[0]) z[1]=list(sort2).index(sum6[0]) print(u)
输出结果
[[ 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 1.]
相关文章推荐
- matlab练习程序(k-means聚类)
- matlab练习程序(k-means聚类)
- matlab练习程序(k-means聚类)
- 机器学习算法与Python实践之k均值聚类(k-means)
- K-Means聚类
- python sklearn:聚类-k-means,聚类趋势,簇数确定,测定聚类质量
- 聚类经典方法K-means及其变种
- 机器学习(5)--K-means聚类(Clustering)算法
- 【数据挖掘】聚类之k-means
- k-means聚类原理 代码分析
- 用scikit-learn学习K-Means聚类
- 聚类、K-Means、例子、细节
- Python机器学习算法实践——k均值聚类(k-means)
- 聚类 K-means
- K-means聚类 的 Python 实现
- K-Means聚类和EM算法复习总结
- 聚类、K-Means、例子、细节
- 聚类分析及k均值聚类(K-means)
- 机器学习小组知识点35:二分K-means聚类
- 【聚类】- 聚类之K-means基础