資料探勘 MATLAB實現歐氏距離計算

2021-10-23 04:43:17 字數 1120 閱讀 5640

問題描述

實現任意給定兩個相同維度的向量之間的歐氏距離計算函式dist_e(x,y)。

測試**:x=[1,3,0,2]; y=[2,3,2,0]; dist=dist_e(x,y);

**實現

實現程式如下圖所示:

% 方法1

function dist =

dist_e

(x,y)

dist =

;if(length

(x)~

=length

(y))

disp

('length of input vectors must agree'

)% disp函式會直接將內容輸出在matlab命令視窗中

else

z =(x-y)

.*(x-y)

; dist =

sqrt

(sum

(z))

;end

end% 方法2:公式法

function dist =

dist_e

(x,y)

[m,n]

=size

(x);

dist =0;

for i=1:

max(m,n)

dist = dist+(x

(i)-

y(i))^

2;enddist =

sqrt

(dist)

;end

% 方法3:採用pdist函式

function dist =

dist_e

(x,y)

dist =

[x;y]

;dist =

pdist

(dist)

;% 計算各行向量之間的歐式距離

end

命令列視窗輸入如下**:

x=[1

,3,0

,2];

y=[2,

3,2,

0]; dist=

dist_e

(x,y)

matlab資料探勘學習篇

常用函式 xlsread 檔名 讀取excel檔案 num,txt,raw xlsread num讀取數字變數,txt讀取文字變數 num,txt,raw xlsread myexample.xlsx num 1 2 3 4 5 nan 7 8 9 txt first second third x ...

資料探勘 單層感知器的Matlab實現

單層感知器 1.newp 建立乙個感知器 舉個栗子 用newp函式建立乙個感知器並進行訓練 p 1,1 1,1 t 1 net newp p,t,hardlim learnp p 0,0,1,1 0,1,0,1 用於訓練的輸入資料,每列為乙個輸入向量 t 0,1,1,1 輸入資料的期望輸出 net,...

資料探勘 單層感知器的Matlab實現

單層感知器 1.newp 建立乙個感知器 舉個栗子 用newp函式建立乙個感知器並進行訓練 p 1,1 1,1 t 1 net newp p,t,hardlim learnp p 0,0,1,1 0,1,0,1 用於訓練的輸入資料,每列為乙個輸入向量 t 0,1,1,1 輸入資料的期望輸出 net,...