我有same IDs
的2个矩阵。 mat1
每个ID有多行,而mat2
每个ID有ONLY 1
行。矩阵是预先排序的。
% COL1 -> ID
mat1 = [ 20 2008 0.11 ; 20 2010 0.22 ; 30 2001 0.99 ; 40 2011 0.11 ; 40 2011 0.22 ; 40 2012 0.11 ] ;
mat2 = [ 20 0.88 ; 30 0.11 ; 40 0.99 ] ;
mat2 ID需要按照mat1中相应的行数重复。
mat2 = [ 20 0.88 ; 20 0.88 ; 30 0.11 ; 40 0.99 ; 40 0.99 ; 40 0.99 ] ;
你能建议一个答案吗?就我自己而言,我想过使用accmarray
等获取每个ID的行数,然后可能是repmat mat2。感谢。
答案 0 :(得分:1)
试试这个:
[b,m,n] = unique(mat1(:,1));
mat3 = mat2(n,:)
希望这会有所帮助......