Kmeans系列目录:
Kmeans聚类②——Sklearn数据生成器(make_blob/classification/circles/make_moons)
Kmeans聚类③——Kmeans聚类原理&轮廓系数&Sklearn实现
Kmeans聚类实例④——电商RFM模型聚类
Kmeans聚类实例⑤——直播行业用户质量分析

在学习机器学习中,经常会遇到找不到合适的数据集的情况,后来才发现我们可以自己批量生成各种各样的数据,简直不要太惊喜!这里整理了一些常用的生成数据的方法

一、Make_blobs(聚类生成器)

n_samples:待生成的样本的总数
n_features:每个样本的特征数,默认为2
centers: 要生成的样本中心(类别)数,默认为3
cluster_std: 每个类别的方差,默认为1
shuffle: 打乱 (default=True)

import matplotlib.pyplot as pltdata1,target1= make_blobs(n_samples=1000,n_features=2,random_state=0)  # random_state是随机数种子,便于复现
data2,target2= make_blobs(n_samples=1000,n_features=2,random_state=0,centers=4,cluster_std=[0.2,0.5,0.6,0.8]) # centers是类数量,默认为3
data3,target3 = make_blobs(n_samples=1000,n_features=2,shuffle=True,centers=5,cluster_std=1.2) # cluster_std是标准差,可以设置一样,或每个类设置一个
data4,target4 = make_blobs(n_samples=1000,n_features=2,shuffle=True,random_state=2,centers=5,cluster_std=1.2) # shuffle是可以打乱
fig,axes = plt.subplots(2,2)
axes[0,0].scatter(data1[:,0],data1[:,1],c=target1)
axes[0,1].scatter(data2[:,0],data2[:,1],c=target2)
axes[1,0].scatter(data3[:,0],data3[:,1],c=target3)
axes[1,1].scatter(data4[:,0],data4[:,1],c=target4)
plt.show()

二、Make_classification(分类生成器)

n_features :特征个数= n_informative() + n_redundant + n_repeated
n_informative:多信息特征的个数
n_redundant:冗余信息,informative特征的随机线性组合
n_repeated :重复信息,随机提取n_informative和n_redundant 特征
n_classes:分类类别
n_clusters_per_class :某一个类别是由几个cluster构成的

data1,target1 = make_classification(n_samples=100,n_features=2,n_informative=1,n_redundant=0,n_repeated=0,n_clusters_per_class=1)
data2,target2= make_classification(n_samples=100,n_features=2,n_informative=1,n_redundant=0,n_repeated=1,n_clusters_per_class=1)
data3,target3= make_classification(n_samples=200,n_features=2,n_informative=2,n_redundant=0,n_repeated=0,n_clusters_per_class=1)fig,axes = plt.subplots(1,3)
axes[0].scatter(data1[:,0],data1[:,1],c=target1)
axes[1].scatter(data2[:,0],data2[:,1],c=target2)
axes[2].scatter(data3[:,0],data3[:,1],c=target3)
plt.show()

三、Make_circles(圆环图)

前3个没啥可说的,noise是指添加高斯噪音,factor是指内环与外环的接近成都,值越接近1,两环距离越近

data1,target1=make_circles(n_samples=100,shuffle=True,noise=0,random_state=0,factor=0)
data2,target2= make_circles(n_samples=100,shuffle=True,noise=0.2,random_state=0,factor=0)
data3,target3= make_circles(n_samples=100,shuffle=True,noise=0.2,random_state=0,factor=0.8)
data4,target4= make_circles(n_samples=100,shuffle=False,noise=0.2,random_state=56,factor=0.8)
fig,axes = plt.subplots(2,2)
axes[0,0].scatter(data1[:,0],data1[:,1],c=target1)
axes[0,1].scatter(data2[:,0],data2[:,1],c=target2)
axes[1,0].scatter(data3[:,0],data3[:,1],c=target3)
axes[1,1].scatter(data4[:,0],data4[:,1],c=target4)
plt.show()

四、Make_Moons(月亮图)

与Make_circles相比,就少了一个factor

data1,target1=make_moons(n_samples=100,shuffle=True,noise=0,random_state=0)
data2,target2= make_circles(n_samples=100,shuffle=True,noise=0.1,random_state=0)
data3,target3= make_circles(n_samples=100,shuffle=True,noise=0.1,random_state=2)
data4,target4= make_circles(n_samples=500,shuffle=False,noise=0.1,random_state=2)
fig,axes = plt.subplots(2,2)
axes[0,0].scatter(data1[:,0],data1[:,1],c=target1)
axes[0,1].scatter(data2[:,0],data2[:,1],c=target2)
axes[1,0].scatter(data3[:,0],data3[:,1],c=target3)
axes[1,1].scatter(data4[:,0],data4[:,1],c=target4)
plt.show()

Kmeans聚类②——Sklearn数据生成器(make_blobs,make_classification,make_circles,make_moons)相关推荐

  1. 数据可视化 —— 小练习1 KMeans聚类并数据可视化图像像素点

    数据可视化Task1 任务描述:对图片RGB点进行Kmeans聚类,并将结果数据可视化于前端浏览器上 实验平台: Visual Studio Code HTML/CSS/Javascript Edge ...

  2. K-Means++ 聚类之数据可视化:使用gnuplot

    http://blog.chinaunix.net/uid-24774106-id-3415470.html 周末做了K-Means++聚类分析之NBA后卫分类,但是我不爽的一点是最后的结果不直观,需 ...

  3. Kmeans聚类实例④——电商用户质量聚类分析(RFM)

    公众号: 数据小斑马,关注即可获得价值1000元的数据分析学习资料 Kmeans系列目录: Kmeans聚类①--数据标准化&归一化&正则化 Kmeans聚类②--Sklearn数据生 ...

  4. Kmeans聚类③——Kmeans聚类原理轮廓系数Sklearn实现

    数据分析目录(文末有超级彩蛋!): 一.Excel系列--四大常用函数及十大高级图表 二.SQL系列--性能优化/多表关联/窗口分析函数等 三.统计学系列--概率论/置信区间/相关/抽样等 四.Pan ...

  5. 如何对数据进行K-Means聚类

    如何对数据进行K-Means聚类 大家好,我是W 前言:可能大家在初步学习机器学习的时候都会想很快的得到直观的效果,最好能用plt展示出来.所以今天我们就学学怎么对数据进行K-Means聚类,并且通过 ...

  6. k-means聚类算法从入门到精通

    k-means算法是非监督聚类最常用的一种方法,因其算法简单和很好的适用于大样本数据,广泛应用于不同领域,本文详细总结了k-means聚类算法原理 . 目录 1. k-means聚类算法原理 2. k ...

  7. 超详细!构建基于客户细分的 K-Means 聚类算法

    客群细分对于企业了解目标受众非常重要.根据受众群体的不同,我们可以给采取不同的营销策略.目前有许多无监督的机器学习算法可以帮助公司识别他们的用户群并创建消费群体. 在本文中,我将分享一种目前比较流行的 ...

  8. 实战案例!基于 K-Means 聚类算法的客户精准营销模型

    客群细分对于企业了解目标受众非常重要.根据受众群体的不同,我们可以给采取不同的营销策略.目前有许多无监督的机器学习算法可以帮助公司识别他们的用户群并创建消费群体. 在本文中,我将分享一种目前比较流行的 ...

  9. k-means聚类算法原理与参数调优详解

    https://www.toutiao.com/a6690435044869145101/ k-means算法原理 K-means中心思想:事先确定常数K,常数K意味着最终的聚类类别数,首先随机选定初 ...

最新文章

  1. unittest+discover批量处理自动化脚本
  2. linux pci扫描链表,Linux Kernel ---- PCI Driver 分析
  3. 【Makefile由浅入深完全学习记录7】Makefile中变量的高级主题下
  4. leetcode344. 反转字符串 史上最简单力扣题
  5. 担心你的文章图片被盗?试试用python加水印
  6. spring batch(批处理)
  7. 正龙广告借接入平台实现财务集中管理
  8. 计算机无法打开文档,电脑txt文件打不开怎么办-修复电脑中无法打开txt文档的方法 - 河东软件园...
  9. 自定义ViewPager实现3D画廊效果
  10. excel 公式标多级目录序号
  11. 遂冀机器人_河北省电化教育馆关于举办河北省第五届中小学教育机器人暨创客竞赛活动的通知...
  12. 《埃尔维斯与安娜贝尔》配色分享
  13. 聚类 k-means、yellowbrick和信用卡用户实例 -- 023
  14. WSUS将Hyper-V Server 2019视为Windows 10
  15. ssm校园拼车服务系统毕业设计源码211633
  16. N9H30 FMI NAND controller driver for RTT
  17. 白话kali linux上可以安装什么小游戏(好奇版)
  18. 多彩标题文字PR字幕模板PR项目工程文件
  19. CLRS的一些有用的资源
  20. 三维家导入户型镜像怎么使用_三维家设计中如何镜像?

热门文章

  1. Android没有报错,运行模拟器,提示停止运行,App根本打不开,下面是日志,烦请大佬们看看呐
  2. C语言程序设计教程(第三版)课后习题1.6
  3. dp的定义原理和dpi,ppi,px,sp之间的区别
  4. Swift基础语法(常量变量、数据类型、元组、可选、断言)
  5. python问答社区BBS网络论坛社区平台系统源码Tornado
  6. python登陆Discuz!论坛通用代码
  7. ubuntu12.04的ATI驱动的安装
  8. TC (Teamcenter) 许可证解决方案
  9. VPS2104 小功率反激电源控制器 4-100VIN/120V/4A 功率管
  10. 保留关键字 (Transact-SQL)