对于以下程序在matlab里算出来的数组,已知各个数据的类别,怎样对其算后的数组中的数据分类?da1= [ 42 15 5];da2= [ 15 6 2.5];da3= [ 25 18.5 1.5];da4= [ 41 14 4.5];da5= [ 16 5 2.3];da6= [ 14.5 18 1.6];da7= [ 18 23 2.1];a
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/15 02:29:25
对于以下程序在matlab里算出来的数组,已知各个数据的类别,怎样对其算后的数组中的数据分类?da1= [ 42 15 5];da2= [ 15 6 2.5];da3= [ 25 18.5 1.5];da4= [ 41 14 4.5];da5= [ 16 5 2.3];da6= [ 14.5 18 1.6];da7= [ 18 23 2.1];a
对于以下程序在matlab里算出来的数组,已知各个数据的类别,怎样对其算后的数组中的数据分类?
da1= [ 42 15 5];
da2= [ 15 6 2.5];
da3= [ 25 18.5 1.5];
da4= [ 41 14 4.5];
da5= [ 16 5 2.3];
da6= [ 14.5 18 1.6];
da7= [ 18 23 2.1];
a1=sum((da7-da1).^2);
a2=sum((da7-da2).^2);
a3=sum((da7-da3).^2);
a4=sum((da7-da4).^2);
a5=sum((da7-da5).^2);
a6=sum((da7-da6).^2);
aaa=sort([a1 a2 a3 a4 a5 a6]);
结果是aaa =
37.5000 69.6100 298.1600 328.0400 615.7600 648.4100
已知的是da1和da4是第一类,da2和da5是第二类,da3和da6是第三类,da7的类别是通过aaa最小k个数据数值大小的类型判别的,假如K取3,那么37.5000 69.61000 298.1600这三个数据假如有两个数据属于同一类,那么da7就属于该类,如果去掉上面运算程序后面的“;”,那么就会知道每个数据相对应的da1~6,da6=37.5000,da3=69.61000,da2=298.1600.
理论是这样的,我想知道在matlab里跟着上面的程序接下来该怎么写,就是判别da7属于哪一类的程序.
对于以下程序在matlab里算出来的数组,已知各个数据的类别,怎样对其算后的数组中的数据分类?da1= [ 42 15 5];da2= [ 15 6 2.5];da3= [ 25 18.5 1.5];da4= [ 41 14 4.5];da5= [ 16 5 2.3];da6= [ 14.5 18 1.6];da7= [ 18 23 2.1];a
[aaa,index]=sort([a1 a2 a3 a4 a5 a6])
得到的结果是:
aaa =
37.5000 69.6100 298.1600 328.0400 615.7600 648.4100
index =
6 3 2 5 4 1
这个index就是你的分类.
你的da7计算出来a7时,出来的应当是零啊.
所以不知道你想要怎么弄?