K-means聚类分析MATLAB代码
function kmeans
load q1x.dat;
a1=round(98*rand+1);
a2=round(98*rand+1);
miao1=[q1x(a1,1),q1x(a1,2)];
miao2=[q1x(a2,1),q1x(a2,2)];
c=zeros(99,1);
sum1=zeros(1,2);
sum2=zeros(1,2);
for k=1:1
for i=1:99
temp1=norm(q1x(i,:)-miao1)^2;
temp2=norm(q1x(i,:)-miao2)^2;
if temp1<temp2
c(i)=1;
sum1(1,1)=sum1(1,1)+q1x(i,1);
sum1(1,2)=sum1(1,1)+q1x(i,2);
else
c(i)=2;
sum2(1,1)=sum2(1,1)+q1x(i,1);
sum2(1,2)=sum2(1,1)+q1x(i,2);
end
end
e1=find(c==1);
e2=find(c==2);
miao1=[sum1(1,1)/length(e1),sum1(1,2)/length(e1)];
miao2=[sum2(1,1)/length(e2),sum2(1,2)/length(e2)];
end
for j=1:99
if c(j)==1
plot(q1x(j,1),q1x(j,2),'o');
hold on;
else
plot(q1x(j,1),q1x(j,2),'r*');
hold on;
end
end
数据集依旧来自Ng的qx1。可能是由于数据集的缘故(这个数据集是用来做logistic回归的...我比较懒就没去找新的...),迭代次数k一旦超过了2就会产生灾难性的后果~~~留着这个坑以后慢慢填~~~
版权声明:本文为博主原创文章,未经博主允许不得转载。
K-means聚类分析MATLAB代码的更多相关文章
- 多分类问题中,实现不同分类区域颜色填充的MATLAB代码(demo:Random Forest)
之前建立了一个SVM-based Ordinal regression模型,一种特殊的多分类模型,就想通过可视化的方式展示模型分类的效果,对各个分类区域用不同颜色表示.可是,也看了很多代码,但基本都是 ...
- 卷积相关公式的matlab代码
取半径=3 用matlab代码实现上式公式: length=3;for Ki = 1:length for Kj = 1:length for Kk = 1:length Ksigma(Ki,Kj,K ...
- 如何加速MATLAB代码运行
学习笔记 V1.0 2015/4/17 如何加速MATLAB代码运行 概述 本文源于LDPCC的MATLAB代码,即<CCSDS标准的LDPC编译码仿真>.由于代码的问题,在信息位长度很长 ...
- 编程算法 - 最小的k个数 红黑树 代码(C++)
最小的k个数 红黑树 代码(C++) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 输入n个整数, 找出当中的最小k个数. 使用红黑树(multiset) ...
- JAVA调用matlab代码
做实验一直用的matlab代码,需要嵌入到java项目中,matlab代码拼拼凑凑不是很了解,投机取巧采用java调用matlab的方式解决. 1. matlab版本:matlabR2014a ...
- 调试和运行matlab代码(源程序)的技巧和教程
转载请标明出处:专注matlab代码下载的网站http://www.downma.com/ 本文主要给大家分享使用matlab编写代码,完成课程设计.毕业设计或者研究项目时,matlab调试程序的技巧 ...
- 直方图均衡化与Matlab代码实现
昨天说了,今天要好好的来解释说明一下直方图均衡化.并且通过不调用histeq函数来实现直方图的均衡化. 一.直方图均衡化概述 直方图均衡化(Histogram Equalization) 又称直方图平 ...
- 将labelme 生成的.json文件进行可视化的代码+label.png 对比度处理的matlab代码
labelme_to_dataset 指令的代码实现: show.py文件 #!E:\Anaconda3\python.exe import argparse import json import o ...
- SVM实例及Matlab代码
******************************************************** ***数据集下载地址 :http://pan.baidu.com/s/1geb8CQf ...
随机推荐
- Loadrunder场景设计篇——定时器(schedule)
A. 定义方案schedule 在 Scenario Schedule面板中,选择一个方案schedule,或通过点击New Schedule定义一个新的方案 定义schedule: a.新建sc ...
- SDWebImage 加载Https自签名证书时的图片问题
你是否遇到了这种情况,好不容易把自签名HTTPS证书配置好了,访问https接口也成功了,但是图片加载不出来? 传了SDWebImageAllowInvalidSSLCertificates 还是没效 ...
- oracle 中 dual 详解
基本上oracle引入dual为的就是符合语法1. 我们先从名称来说,dual不是缩写词,本身就是完整的单词.dual名词意思是对数,做形容词时是指二重的,二元的.2. Oracle中的dual表是一 ...
- Linux系统下强大的lsof命令使用宝典
lsof命令简介: lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件 ...
- Latex排版全解【转载】
Latex排版全解 https://www.cnblogs.com/jingwhale/p/4250296.html
- pexpect实现远程操作
#!/usr/bin/pythonimport pexpectimport syssip="ssh root@172.10.224.183"try: child=pexpect.s ...
- 获取微信公众号用户的基本信息(UnionID机制)
获取用户基本信息(UnionID机制) 在关注者与公众号产生消息交互后,公众号可获得关注者的OpenID(加密后的微信号,每个用户对每个公众号的OpenID是唯一的.对于不同公众号,同一用户的open ...
- Timer in C#
https://docs.microsoft.com/en-us/dotnet/api/system.timers.timer?view=netframework-4.7.2 Be aware tha ...
- 分步引导中,Js操作Cookie,实现判断用户是否第一次登陆网站
上一篇介绍了分布引导插件IntroJs的使用,本篇介绍通过Js操作cookie的方法. 分步引导的功能只适合与第一次登陆网站的新用户,不能每次登陆都提示分布引导,那么如何判断用户是否第一次登录网站呢? ...
- php变量简单介绍
1.isset() 判断变量是否存在 ==================================================================== 2.unset()清除变 ...