2013-04-07 65 views
0

我在Matlab中有兩個行向量,比如說X和Y(兩者都是相同的大小)。現在我想查找訂單對(x,y)的頻率。這個怎麼做?matlab中訂單對的頻率

回答

1

使用unique找到唯一對他們occurances

[C, ia, ic] = unique([X Y], 'rows'); 
n = hist(ic, 1:size(C,1)); % count the pairs 
freq = n ./ sum(n); 
+0

我沒有得到你的最後一個命令。我想要[X Y] – sahil 2013-04-07 07:40:45

+0

@sahil中每個訂單對的頻率 - 最佳方式:在調試模式下運行,看看會發生什麼。 'ic'存儲唯一對的行索引(從'C'映射到'[X Y]')。 'hist'命令計算每個唯一索引的頻率,從而以'n'返回每個對的出現次數。 – Shai 2013-04-07 07:55:38

+0

所以我應該得到的是沒有。 n中的行數與n相同。因爲每一行都應該告訴C中相應對的頻率。但是我收到的是:size(C):821 x 2 and size(n):1 x 1642 – sahil 2013-04-07 09:52:16