abl*_*mit 5 string matlab arguments function
基本上,我有10个数据文件,我写了一个MATLAB函数来处理这些数据.代码是这样的:
function Z = fitdata(file_path)
A = importdata(file_path,',');
...
end
Run Code Online (Sandbox Code Playgroud)
由于我不想输入相同的命令10次(对于不同的文件名),我编写了另一个脚本来自动执行此处理.代码如下所示:
function X = automate()
myarray = {'file_one', 'file_two', 'file_three',......,'file_ten'};
for i = 1:9
mypath = myarray{i};
W = fitdata(mypath);
...
end
end
Run Code Online (Sandbox Code Playgroud)
但是我在调用fitdata(file_path)函数时收到错误"Too many input arguments".
我该怎么做?
编辑:由于下面的建议没有解决问题,并且由于您发布的代码似乎没有任何其他错误,因此我接下来会检查以确保fitdata上面给出的版本是该名称的唯一函数在 MATLAB 路径上。您可能无意中创建了另一个函数或脚本并将其另存为fitdata.m,并且可能会调用该函数或脚本而不是您上面创建的版本。
之前的回答:
我认为您的意思是使用IMPORTDATA函数而不是IMPORT,这可能是您收到的错误的来源。
另外一条建议:最好不要命名变量之一path,因为已经有一个函数PATH。最终将使用变量而不是函数(基于MATLAB 优先规则),这仍然是您在这种特定情况下希望发生的情况,但在其他情况下会造成混乱和错误。