Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 其它 > 资料存档
资料存档 资料存档
回复
 
主题工具 显示模式
旧 2019-12-10, 20:30   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 如何在MATLAB中将字符串作为函数参数传递?

基本上,我有10个数据文件,并且编写了一个MATLAB函数来处理这些数据。代码是这样的:

function Z = fitdata(file_path) A = importdata(file_path,','); ... end 因为我不想输入相同的命令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 但是在fitdata(file_path)函数的调用中出现“输入参数太多”错误。

我应该怎么做?



回答:

编辑:由于下面的建议不能解决问题,并且由于您发布的代码似乎没有其他问题,因此我接下来将检查以确保上面给出的fitdata版本是该函数的唯一功能在MATLAB路径上的名称。您可能无意中创建了另一个函数或脚本,并将其另存为fitdata.m ,并且可能会调用它而不是上面创建的版本。

先前的答案:

我认为您的意思是使用IMPORTDATA函数而不是IMPORT ,这可能是您收到的错误的来源。

另一条建议:最好不要命名您的变量path ,因为已经有一个函数PATH 。最终将使用该变量而不是使用函数(基于MATLAB优先规则 ),该函数在特定情况下仍然是您想要的,但在其他情况下却会引起混淆和错误。



更多&回答...
poster 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛禁用 表情符号
论坛启用 [IMG] 代码
论坛启用 HTML 代码



所有时间均为北京时间。现在的时间是 12:29


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.