亲爱的各位,
我希望通过使用structfun()和cellfun()命令来避免使用for循环。
我有一个文件夹,里面有一堆“nnn_M.csv”文件,其中“nnn”前缀对应于文件的编号,“M”后缀对于所有文件都是常量。我的目标是创建一个“nnn”值的双数组。
我当前与for循环一起使用的代码:(有效)
Files=dir(“*.csv”);
N=长度(文件);
对于ii=1:N
FileNames{ii}=文件(ii).name;
nnn(ii)=sscanf(文件名{ii},“%d\M”);
终止
这是没有for循环的代码:(不工作)
Files=dir(“*.csv”);
FileNames=structfun(@(x)个文件(x).name,个文件);
nnn=cellfun(@(x)sscanf(文件名{x}),“%d\M”),文件名);
第二行和第三行分别给出了错误:
错误使用structfun
投入to STRUCTFUN必须是标量结构。
指数超过数组元素数(14)。
错误在@(x)sscanf(文件名{x},'
我欢迎您提出的所有建议。感谢您帮助我理解这些功能!
干杯
-杰克逊