【发布时间】:2017-05-10 01:38:12
【问题描述】:
问题说明:我正在尝试为一个主调用函数(如下面的 run_experiment)编写 MATLAB 代码,以指定我想要执行哪些计算,其中计算是按顺序进行的使用其他 MATLAB 函数。其他函数将根据主调用函数传递的参数进行评估。计算中使用的上述函数将用它们编写的脚本的名称来指定。
所需代码行为示例:例如,类似以下的命令应运行 preprocess_data、initialise_model 和 train_model em> 脚本。
>> run_experiment('dataset_1_options', '|preprocess_data|initialise_model|train_model|');
而且这个命令应该只运行 train_model 脚本,但也要评估它的性能:
>> run_experiment('dataset_1_options', '|train_model|evaluate_model|');
在上面的例子中“|”用作分隔符来指定要评估的单独函数名称。这些函数使用 dataset_1_options 指定的选项。请不要专注于如何将那部分输入分离成有意义的函数名;我知道如何使用 strsplit。
约束和规范:作为输入传递给主调用者函数的函数名称不是匿名函数。 目的是能够将这样的多个函数名称作为输入传递,并使用上面示例中的选项对它们进行评估。它们返回输出以在研究代码的其他部分进行评估(即传递数据研究代码中其他函数的矩阵,作为在其中执行的计算的结果。)
问题:鉴于上述所需的行为和约束,任何人都可以帮助如何将来自另一个调用函数的单独函数名称以及选项/参数传递给这些函数吗?主调用函数应如何使用调用期间指定的选项评估作为输入传入的函数名称?
提前谢谢你。
【问题讨论】:
标签: matlab function parameter-passing user-input