How to assign next matching string

1 visualización (últimos 30 días)
Mekala balaji
Mekala balaji el 14 de Oct. de 2018
Respondida: the cyclist el 14 de Oct. de 2018
Hi, I have below cell array,
STD AMHAT00 PAK497.00 34 Same 12
AT AAHAT00 YAH00K 34 56
AT AAHAT00 YAH00K 34 56
STD AAHAT00 PAK897.00 34 Diff 12
STD AAHAT00 PAK897.00 34 same 12
AT AAHAT00 AKAH00K 34 56
AT AAHAT00 AKAH00K 84 56
AT AAHAT00 AKAH00K 84 56
STD AAHAT00 NAK837.00 34 Same 12
STD AAHAT00 NAK837.00 34 Same 45
The 5th column Diff or same is based on column2. If the previous STD column2 is different name, then it lableas Diff, and if it is same then it labeled as same.
Output rule: For each STD, just previous AT rows &5th column is labeled same as the first STD column5. Desired output:
AT AAHAT00 YAH00K 34 Diff 56
AT AAHAT00 YAH00K 34 Diff 56
AT AKHAT50 AKAH00K 34 Same 56
AT AKHAT50 AKAH00K 84 Same 56
AT AKHAT50 AKAH00K 84 Same 56

Respuesta aceptada

the cyclist
the cyclist el 14 de Oct. de 2018
If c is your input array, then
for nc = size(c,1)-1:-1:1;
if not(ismember(lower(c{nc,5}),{'same','diff'}))
c(nc,5) = c(nc+1,5);
end
end
output = c(ismember(c(:,1),'AT'),:)

Más respuestas (0)

Categorías

Más información sobre Startup and Shutdown 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!

Translated by