我正在使用MATLAB。我有一个矩阵,N
个元素填充了数字[1; N]
,但它们之间只有K
个唯一编号(K
远小于N
)。什么是重新标记矩阵的高效方式,以便它只包含数字[1; K]
?等数应该相等,不相等应该变得不相等。
N = 10
,K = 4
:
[1 4 8 9 4 1 8 9 4 1] -> [1 2 3 4 2 1 3 4 2 1]
答案 0 :(得分:8)
使用unique
的第三个输出参数:
a=[1 4 8 9 4 1 8 9 4 1];
[~, ~, b] = unique(a)
b =
1 2 3 4 2 1 3 4 2 1