calling a matrix with different names in a for loop

4 次查看(过去 30 天)
I have three matrixes with different names as NPV_1, NPV2 and NPV_3. I have tried the below but It did not work. Can you please help
for i = 1:3
fm =forfor sprintf('NPV_%d',i);
NPV_Mat = fm;
end
  2 个评论
Stephen23
Stephen23 2019-9-5
"I have three matrixes with different names as NPV_1, NPV2 and NPV_3"
Accessing separate variable names like that is one way that beginners force themselves into writing slow, complex, obfuscated, buggy code that is hard to debug. Read this to know why:
Yaser Khojah
Yaser Khojah 2019-9-5
I agree and going to fix it. Thanks a lot for sharing this

请先登录,再进行评论。

采纳的回答

Stephen23
Stephen23 2019-9-5
编辑:Stephen23 2019-9-5
Simply put your three matrices into one cell array, then your task is trivial:
C = {NPV_1, NPV2, NPV_3};
for k = 1:numel(C)
M = C{k};
... do whatever with M
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by