Matlab 当我同时读取多个文件时,如何将结果保存在文件中?
我有这样的代码,在其中我想读取多个文件并找到每个文件的“百分比” 这是我尝试过的代码,但问题是我得到的所有“百分比”都具有上一次迭代的值! 请注意,aaa的值在每次迭代中都会更改Matlab 当我同时读取多个文件时,如何将结果保存在文件中?,matlab,Matlab,我有这样的代码,在其中我想读取多个文件并找到每个文件的“百分比” 这是我尝试过的代码,但问题是我得到的所有“百分比”都具有上一次迭代的值! 请注意,aaa的值在每次迭代中都会更改 for ff= 3:10 file_name= fullfile(sprintf('node%d.txt',ff)); A= importdata(file_name); ******* code***** aaa= [CH_con, MPRf{S,D}];%%
for ff= 3:10
file_name= fullfile(sprintf('node%d.txt',ff));
A= importdata(file_name);
******* code*****
aaa= [CH_con, MPRf{S,D}];%%% check
aaa2= unique(aaa);
number_of_MPRs= length(aaa2);
percentage_of_MPRs(ff) = (number_of_MPRs/n)*100
end
首先,回答你的问题: 由于
唯一(aaa)
在所有循环中都是相等的,因此aaa2
是相等的,因此mpr/n的数量是恒定的,因此percentage\u中的所有元素都会得到相同的结果
也许你想要:
%% Insert missing code here:
%
%
for ff = 3:10
%% Insert more missing code here
%
%
aaa2 = unique(aaa(ff));
number_of_MPRs = length(aaa2);
percentage_of_MPRs(ff) = (number_of_MPRs/n)*100
end
请注意,上面的代码非常糟糕,但这是我对问题中的信息所能做的最好的了 问题似乎不在你提供的代码片段中。我不理解你的问题,但问题是aaa是一个向量,所以当我把aaa2=unique(aaa(ff))放进去时,我得到了这个错误((在赋值a(I)=B中,B和I中的元素数必须相同。))这不是“复制粘贴此代码”类型的答案,但更像是:看看你能不能按照这些思路做点什么。aaa
是否在循环内部发生变化?你能提供完整的代码吗(如果不是太长的话)。根据经验,(除非问题特别好),如果人们需要滚动来阅读代码,那么很可能太长了,人们不必费心。我要阅读的文件中的每个文件都会生成不同的aaa值。您可能应该在问题中包含这一点。你试过调试器了吗?插入断点并查看每个变量在每次迭代中的值。