在循环中使用输入值不断变化的函数

rachel_lomaskyrachel_lomasky 成员职位:52大师
2018年11月编辑 帮助

我想弄清楚为什么我的宏在循环内没有被正确重置。

我有一个"循环文件"在里面,我有一个生成宏->生成报告->添加部分。

  • 生成宏创建一个名为"without_extension"的宏,其函数为"replace(%{file_name},".tsv","")"。
  • 生成报表将创建一个Excel文件,其报表名称为:%{without_extension}
  • “添加”部分添加到报告名称:%{without_extension}

我希望,给定要循环的目录中的三个文件,三个报告,每个报告添加一个部分。我收到了三份报告。然而,三个中只有一个增加了一个章节。如果我从被循环的目录中删除那个,另一个目录就会有这个section。

请帮助我了解我做错了什么设置宏。

提前感谢。

标记:

最佳答案

  • rachel_lomaskyrachel_lomasky 成员职位:52大师
    解决方案接受

    问题是它在循环中被重新初始化。这是用户错误。

答案

  • Thomas_OttThomas_Ott RapidMiner认证分析师,RapidMiner认证专家,成员职位:1761年独角兽

    根据你的解释,我认为发生的事情是每次循环完成时文件都被覆盖。您应该做的是将生成的报告命名为循环文件宏%{file_name}。如果正在循环的文件具有唯一的文件名,那么报告将使用文件名生成。

  • rachel_lomaskyrachel_lomasky 成员职位:52大师

    你好,

    谢谢你!是的,文件名是基于宏的:

    Excel文件名= %{without_extension}.xls

  • Thomas_OttThomas_Ott RapidMiner认证分析师,RapidMiner认证专家,成员职位:1761年独角兽

    尝试使用循环文件中的%{file_name}。该宏提取文件的名称,然后您可以保存它。

登录注册置评。