Clustering.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:GRIPy 作者: giruenf 项目源码 文件源码
def k_means(data, nc, req_info=None):
    means = np.mean(data, axis=0)
    stds = np.std(data, axis=0)

    sdata = (data - means)/stds

    km = KMeans(init='k-means++', n_clusters=nc, n_init=10)
    km.fit(sdata)

    if req_info == 'all':
        req_info = ['silhouette', 'inertia', 'centers']
    elif req_info is None:
        req_info = []

    info = {}

    if 'silhouette' in req_info:
        info['silhouette'] = metrics.silhouette_score(data, km.labels_)
    if 'inertia' in req_info:
        info['inertia'] = km.inertia_
    if 'centers' in req_info:
        info['centers'] = km.cluster_centers_*stds + means

    return km.labels_, info
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号