How to embed (insert) variable's that old strings or integers into line of code (%d?)
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
לק"י
Hi guys,
I want to use variable's content (like v='name' or b=2.34) to be part of the code it's kind of like %d but as far as I understood it is not quiet like it. i'll explain:
Lets assume I want the code to automatically save figures or run for different inputs and want it to be done with replacing specific regions of the code with the different names of files ot inputs like this:
name='name_I_want' %name I want
b=231 %number I want
xnm=PA 'insert_name/integer_here' dirf(:,1);
ynm=PA 'insert_name/integer_here' dirf(:,2);
figure(1)
scatter(xnm,ynm, 1, 'filled');
title(' 'insert_name/integer_here' cell 2, XY scatter whole cell')
xlabel('nm')
ylabel('nm')
The lines i'm interested to insert\embed the new name\number are:
xnm=PA'insert_name/integer_here'dirf(:,1);
ynm=PA'insert_name/integer_here'dirf(:,2);
title(''insert_name/integer_here'cell 2, XY scatter whole cell')
I tried %d but I saw it only works with sprintf which is a variable of itself and not a way to 'intefere' with the code.
Thanks!
Amit.
2 Commenti
Stephen23
il 25 Ago 2021
Modificato: Stephen23
il 26 Ago 2021
Before forcing yourself into writing slow, complex, very inefficient, obfuscated code like that, you should read this:
Numbering variables like that indicates that you are doing something wrong.
Forcing meta-data (e.g. pseudo-indices) into variable names indicates that you are doing something wrong.
Meta-data is data and so should be stored in arrays (not in array names), which will make accessing your (meta-)data much simpler and more efficient. For the data that you have shown, a table might be a suitable array type:
Risposte (0)
Vedere anche
Categorie
Scopri di più su Creating and Concatenating Matrices 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!