หาค่าที่ซ้ำกันใน matrix [matlab]


ไม่ได้คิดเองหรอกนะ เอามาจากไหนจำไม่ได้แล้ว ลองทำ sample ดูเอาเองแล้วกันไม่ยาก

[uniq_sample a b] = unique(knn(:,2));
no_occur = histc(b,1:length(a));
knn_occur=[uniq_sample no_occur];

ลืมเอาตัวอย่างมาให้เลยไปค้นจาก MATLAB Function

Unique Rows in a Matrix

A = [9 2 9 5;

9 2 9 0;

9 2 9 5];

[C, ia, ic] = unique(A,'rows')
C =

     9     2     9     0
     9     2     9     5

ia =

     2
     3

ic =

     2
     1
     2
C คือ row ที่ unique
ia คือ ตำแหน่งของ unique row
ic คือจำนวนค่าที่ซ้ำกันของแต่ละ row

ติดป้ายกำกับ:

ใส่ความเห็น

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / เปลี่ยนแปลง )

Twitter picture

You are commenting using your Twitter account. Log Out / เปลี่ยนแปลง )

Facebook photo

You are commenting using your Facebook account. Log Out / เปลี่ยนแปลง )

Google+ photo

You are commenting using your Google+ account. Log Out / เปลี่ยนแปลง )

Connecting to %s

%d bloggers like this: