find ID's of repeated values in array
    7 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    Kim Arnold
 el 17 de Sept. de 2021
  
    
    
    
    
    Comentada: Kim Arnold
 el 17 de Sept. de 2021
            Let's say I have 2 arrays, one longer t1 (1x15 double) and a shorter one t2(1x8 double) and I tried to find the indices of t1 in the t2 as follows:
t1=[1,2,3,3,3,4,5,6];
t2=[1,1.5,2,3,4,5,6,7,8,9,9.5,19,25,31,42];
IDt1_int2=ismember(t2,t1)
>> ismember(t2,1)
ans =
  1×15 logical array
   1   0   1   1   1   1   1   0   0   0   0   0   0   0   0
but what I acutally wanted is something like this
IDt1_int2=find(ismember(t2,t1));
find(ismember(t2,t1))
ans =
     1     3     4     5     6     7
but what i want it to give as an ouput is an array of IDs which considers the numbeer 3 in my t1 three times like this
[1 3  4  4  4  5  6  7];  
Could you help here? Thank you 
2 comentarios
Respuesta aceptada
  Simon Chan
      
 el 17 de Sept. de 2021
        You may use a for loop as follows:
idx = zeros(1,length(t1));
for k = 1:length(t1)
    idx(k) = find(ismember(t2,t1(k)));
end
Más respuestas (1)
Ver también
Categorías
				Más información sobre Calendar en Help Center y File Exchange.
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



