How to account for a change in variabale name when using "find"?

1 visualización (últimos 30 días)
Hi all,
I have a large excell file in which I am intending to find a specific variables in this way:
idx_lfoot_start = find(strcmp(data_raw(:, 2), '"HX210.11.31.M9-LF S0060"'));
idx_lfoot_end = find(strcmp(data_raw(:, 2), '"HX210.11.31.M9-RF S0060"'));
However, the variables, depending on a file, can be named:
"HX210.11.31.M7-LF S0060"
"HX210.11.31.M7-RF S0060"
I am using this variable as an index to extract data, an example below. If I do not acccount for this variation in the name, nothing is identified. How could I account for this in the code?
% indices between idx_lfoot_start and idx_lfoot_end
idx = arrayfun(@(idxStart, idxEnd) idxStart:idxEnd, idx_lfoot_start, idx_lfoot_end,...
'UniformOutput', false);
% corresponding values for variables of interest
c.l_avgP = cellfun(@(idxx) data_raw(idxx(strcmp(data_raw(idxx, 1), ...
'Average Pressure (PSI)')), 2), idx);

Respuesta aceptada

Monica Roberts
Monica Roberts el 17 de Mayo de 2022
Sounds like a job for regexp. For example:
>> regexp("HX210.11.31.M7-LF S0060","HX210*-LF S0060")
ans =
1
>> regexp("HX210.11.31.M7-LF S0060","HX210*-RF S0060")
ans =
[]
  3 comentarios
Monica Roberts
Monica Roberts el 17 de Mayo de 2022
Without seeing "data_raw" I'm not sure what the code should look like. What does this give you?
regexp(data_raw(:, 2),"HX210.*-LF S0060")
Tomaszzz
Tomaszzz el 19 de Mayo de 2022
Thanks, this does the trick

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Get Started with MATLAB en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by