Effacer les filtres
Effacer les filtres

loop over variable with different characters

1 vue (au cours des 30 derniers jours)
Serhat Unal
Serhat Unal le 29 Sep 2022
Commenté : Stephen23 le 2 Oct 2022
Hi,
I wonder if someone cna help me with my problem and that is if I have lets say 4 variables in my workspace with different
characters in the begnning end ends with the same words, for example:
abcd_hpcd_Df
defg_hpcd_Df
hijk_hpcd_Df
lmno_hpcd_Df
I want to write it in matlab in a easier way, just write hpcd_Df and not the characters in the beginning.
  5 commentaires
Serhat Unal
Serhat Unal le 29 Sep 2022
I want to call them and insert them into a table as a column with these variables. The thing is
that each of the variables is among 100 other variables and I dont know what words they begin with
and to look visually and find each is a very time consuming. Therefore when I clean the workspace and insert
new 100 variables I want to write like_hpcd_Df to find the corresponding variable.

Connectez-vous pour commenter.

Réponse acceptée

Jan
Jan le 29 Sep 2022
This shows, that you have created a bunch of variables and stored important information in the name of the variables. This design is a typical DON'T in programming.
But is you do not want to re-design the code from scratch, this might help:
clear variables
abcd_hpcd_Df = 1;
defg_hpcd_Df = 1;
hijk_hpcd_Df = 1;
lmno_hpcd_Df = 1;
abcde = 2;
VarList = whos;
NameList = {VarList.name};
NameList(endsWith(NameList, '_hpcd_Df'))
ans = 1×4 cell array
{'abcd_hpcd_Df'} {'defg_hpcd_Df'} {'hijk_hpcd_Df'} {'lmno_hpcd_Df'}
  4 commentaires
Serhat Unal
Serhat Unal le 2 Oct 2022
This is the exact answer to my question. Thanks alot!
Stephen23
Stephen23 le 2 Oct 2022
abcd_hpcd_Df = 1;
defg_hpcd_Df = 1;
hijk_hpcd_Df = 1;
lmno_hpcd_Df = 1;
abcde = 2;
save('mydata.mat','-regexp','_hpcd_Df$')
S = load('mydata.mat')
S = struct with fields:
abcd_hpcd_Df: 1 defg_hpcd_Df: 1 hijk_hpcd_Df: 1 lmno_hpcd_Df: 1

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by