find a rows in matrix and its position in that matrix ?

1 visualizzazione (ultimi 30 giorni)
datasheet(48*6)size
%I had a matrix of size(48*6) and then
ii = randperm(size(datasheet,1));
k = ones(24,1)*2;
out = mat2cell(datasheet(ii(1:sum(k)),:),k,size(datasheet,2));
%then i select a row from datasheet lets say 4th row
B=datasheet(4,:);
%now I want to find out the position of that 4th row in "out" matrix.

Risposta accettata

Walter Roberson
Walter Roberson il 22 Nov 2017
out{ ceil( find(ii == 4)/2 ) }
  3 Commenti
MUKESH KUMAR
MUKESH KUMAR il 12 Dic 2017
If I have updated K and datasheet values like attached file then I did not find according to this code and I also tried Index/find but did not get

Accedi per commentare.

Più risposte (1)

Andrei Bobrov
Andrei Bobrov il 22 Nov 2017
Modificato: Andrei Bobrov il 22 Nov 2017
In general case:
[~,ji] = cellfun(@(x)ismember(B,x,'rows'),out,'un',0);
jj_cell = find(cellfun(@(x)x>0,ji));
ii_row_in_cell = ji{jj_cell};

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by