资源简介

通过k-means实现聚类,本例给出的数据集是testSet,用户下载代码以后,修改fileIn = open('F:/python/testSet.txt') 这句代码为自己文件的存放位置,即可运行。

资源截图

代码片段和文件信息

# -*- coding: utf-8 -*-
“““
Created on Thu Nov 17 16:13:56 2016

@author: phl
“““
print(“k-means算法程序“)
from numpy import *  
import time  
import matplotlib.pyplot as plt 


# 欧几里得聚类计算
def euclDistance(vector1 vector2):
    return sqrt(sum(power(vector2 - vector1 2)))  

# 随机初始化聚类的中心
def initCentriods(dataSetk):
    print(dataSet)
    numSamplesdim = dataSet.shape #dim列数
    centroids = zeros((k dim))    
    print(“行数:“numSamples)
    print(“列数:“dim)
    for i in range(k):
        index = int(random.uniform(0 numSamples)) 
        centroids[i :] = dataSet[index :]
    return centroids
# k-means cluster  
def kmeans(dataSet k):
    numSamples = dataSet.shape[0]  #dataSet.shape是几行几列的意思,这里是7行2列
    print(“行数:“numSamples)
    clusterAssment = mat(zer

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        3302  2016-11-17 20:16  k_means\k_means.py
     文件          57  2016-11-17 16:39  k_means\testSet.txt
     文件         807  2016-11-17 20:16  k_means\test_kmeans.py
     目录           0  2016-11-17 20:36  k_means\

评论

共有 条评论