我可以在for循环中保存不同的变量吗?

17次观看(过去30天)
大家好。
我的工作与一个代码,其中50个变量必须被保存。每一个都是矩阵的一行。我试图实现这个作为
i = 1:50
element_of_the_ensemble =我;%de 1 a 50
windX_in_the_node = vientoX_vector (:, element_of_the_ensemble);
windY_in_the_node = vientoY_vector (:, element_of_the_ensemble);
matriz_a_enviarX_1_of_50 = 0(大小(windX_in_the_node, 1), 3);
matriz_a_enviarX_1_of_50 (: 1:2) = positions_reducida;
matriz_a_enviarY_1_of_50 = 0(大小(windY_in_the_node, 1), 3);
matriz_a_enviarY_1_of_50 (: 1:2) = positions_reducida;
matriz_a_enviarX_1_of_50 (:, 3) = windX_in_the_node;
matriz_a_enviarY_1_of_50 (:, 3) = windY_in_the_node;
保存(“Xdata_”+我+“_of_50”“matriz_a_enviarX_1_of_50”
保存(“Ydata_”+我+“_of_50”“matriz_a_enviarY_1_of_50”
结束
我的这一尝试是基于 另一个问题 .不幸的是,我得到了一个错误。
错误使用保存
必须成为文本标量。
错误在read_data中(第619行)
保存(“Xdata_”+我+“_of_50”“matriz_a_enviarX_1_of_50”
看来我的想法行不通。
有人能告诉我这个过程是否真的能自动化吗?
致以最亲切的问候。
杰米。

接受的答案

斯科特·麦肯齐
斯科特·麦肯齐 2021年8月10日
编辑:斯科特·麦肯齐 2021年8月10日
将所需的文件名创建为字符串或字符变量,然后将该变量与 保存 命令。例如,
文件名= sprintf(“Xdata_ % d_of_50”,我);
保存(文件名,“matriz_a_enviarX_1_of_50”

更多答案(1)

Andreas Mittnacht
Andreas Mittnacht 2021年8月10日
你好杰米,
  1. 为了更好的性能,不使用循环进行计算
  2. 要保存数据,请使用
保存(“Xdata_ % d_of_50”,我“matriz_a_enviarX_1_of_50”
1评论
Jaime De La Mota Sanchis
Jaime De La Mota Sanchis 2021年8月10日
谢谢你的回答。然而,如果我实现它,我得到以下错误:
错误使用保存
必须成为文本标量。
错误在read_data中(第619行)
保存(“Xdata_ % d_of_50”,我,“matriz_a_enviarX_1_of_50”
我已经测试了是否需要在I后面再加一个逗号,但是错误仍然存在。

登录发表评论。

s manbetx 845


释放

R2021a

社区寻宝

在MATLAB中央找到宝藏,并发现社区可以如何帮助你!

开始狩猎!