python kmeans聚类调参_tableau调用python脚本2--kmeans聚类

上一篇关于tableau调用python的文章包含基本的原理、环境配置以及简单的调用实现,本文章是tableau调用python脚本的第二篇,与之前的基础篇相比有所升级,用无监督学习的kmeans聚类。酷酷的章鱼哥:tableau调用python脚本(纯干货)​zhuanlan.zhihu.com

本篇文章不再讲环境配置及基础原理,如需了解,请移步之前文章。

如果是拿来主义,请下翻拷贝源代码

一、Kmeans介绍

初始随机给定K个簇中心,按照最邻近原则把待分类样本点分到各个 簇。然后按平均法重新计算各个簇的质心,从而确定新的簇心。一直迭代,直到簇心的移动距离小于某个给定的值或者蔟心的距离不再变化。

优点:原理比较简单,实现也是很容易,收敛速度快。

聚类效果较优。

算法的可解释度比较强。

主要需要调参的参数仅仅是簇数k。

缺点:簇数目k需要事先给定,但非常难以选定

初始值中心点选择的不好,可能无法得到有效的聚类结果

对噪音和离群点敏感,会影响中心点的位置

不适合于发现非球状簇

二、数据准备

数据来自上一篇文章,已提供下载,kmeans的应用也在该文章中酷酷的章鱼哥:用户生命周期Kmeans聚类并绘制雷达图​zhuanlan.zhihu.com

三、tableau中脚本的编写

python中的脚本只要符合python语法,写起来随心所欲

print 函数打印的内容会在tabpy server 控制台中显示

为了方便大家复用,脚本copy如下:

import numpy as np

import pandas as pd

from sklearn.cluster import KMeans

from sklearn.preprocessing import MinMaxScaler

print()

print('*'*60)

# data=np.array([_arg1,_arg2,_arg3,_arg4,_arg5]).T

data=np.column_stack([_arg1,_arg2,_arg3,_arg4,_arg5])

print(data[:3])

k = 5 # 定义聚类个数

# 数据归一化

min_max_scale=MinMaxScaler()

data=min_max_scale.fit_transform(data)

#调用k-means算法,进行聚类分析

kmodel = KMeans(n_clusters = k)

kmodel.fit(data)

return kmodel.labels_.tolist()

四、结果展示tableau中聚类结果tableau server 控制台信息

后面会分享服务器部署有监督的机器学习算法,并用tableau可视化,在第一篇文章中讲过服务器上部署方法,感兴趣的小伙伴们可以自己先试试

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值