怎么衡量相似的程度,编个程序

来源:百度知道 编辑:UC知道 时间:2024/06/23 01:37:42
请教编一个程序,用matlab或者C,或者perl都可以。
有两组数据,每组3个,怎么衡量这两组数据的相似程度?
举个例子,一组数据是{1,2,3},另外一组是{2,4,6},怎么来衡量这两组数据各个相对应的数的相似性。
不知道说的明白不,有点类似三角形的相似规则,各边成比例
或者说怎么证明由一组数据可以或者说不可以做线性变换得到另外一组数据(一个朋友说的)

谢谢

用matlab吧

A=[1 2 3]
B=[2 4 6]
C=[2 4 5]
r1=B./A %对应元素之比
r2=C./A %对应元素之比
r3=A./B %对应元素之比
r4=A./C %对应元素之比
r1=r1/max(r1)%归一化处理
r2=r2/max(r2)%归一化处理
r3=r3/max(r3)%归一化处理
r4=r4/max(r4)%归一化处理
test1=std(r1)%标准差
test2=std(r2)%标准差
test3=std(r3)%标准差
test4=std(r4)%标准差

运行结果:
A = 1 2 3
B = 2 4 6
C = 2 4 5

r1 = 2 2 2
r2 = 2.0000 2.0000 1.6667
r3 = 0.5000 0.5000 0.5000
r4 = 0.5000 0.5000 0.6000

r1 = 1 1 1
r2 = 1.0000 1.0000 0.8333
r3 = 1 1 1
r4 = 0.8333 0.8333 1.0000

test1 = 0
test2 = 0.0962
test3 = 0
test4 = 0.0962

标准差等于0,为完全相似;
越接近于0越相似。