how to get index position of rows
1 次查看(过去 30 天)
显示 更早的评论
i have a 2 matrix, matrix1 with dimension 2100*128 and matrix2 with dimension 16*128... i wanted to get the index positions of those rows which matches with matrix1, i did as below
for v = 1:k
inds = find(dbfea(1:2100,1:128)==tempfea(v,1:128));
neighindex(v,1) = inds(1);
end
but i'm getting error as
??? Error using ==> eq
Matrix dimensions must agree.
Error in ==> MainGUI>Retrieval_pushbutton_Callback at 304
inds = find(dbfea(1:2100,1:128)==tempfea(v,1:128));
Error in ==> gui_mainfcn at 96
feval(varargin{:});
Error in ==> MainGUI at 42
gui_mainfcn(gui_State, varargin{:});
Error in ==>
@(hObject,eventdata)MainGUI('Retrieval_pushbutton_Callback',hObject,eventdata,guidata(hObject))
??? Error while evaluating uicontrol Callback
what should i do to rectify it....
2 个评论
Walter Roberson
2014-3-5
You want to match rows against corresponding rows? Or you want to check if a row is found in any of the rows in the other matrix?
采纳的回答
Andrei Bobrov
2014-3-5
编辑:Andrei Bobrov
2014-3-5
[l0,idx] = ismember(tempfea,dbfea,'rows');
out = idx(l0);
0 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!