【问题标题】:Is there a process for munging data from many different formats in RapidMiner?RapidMiner 中是否有处理多种不同格式数据的流程?
【发布时间】:2019-08-28 18:38:57
【问题描述】:

我正在努力帮助我的团队简化占用大量时间的数据提取流程。我们接收多种格式的数据,并且属性排列方式不同。有没有办法使用 RapidMiner 创建一个流程:

  • 按计划处理放入文件夹中的文件(此 一个我想我知道的,但我很喜欢这方面的提示作为预定的流程 对我来说是新的)
  • 自动识别输入文件类型并路由到正确的运算符(例如“读取 CSV”)
  • 识别相对较少的属性并相应地排列它们。在某些情况下,属性的命名方式与我们的摄取格式相同,而在其他情况下则不同(例如,phone vs phone # vs Phone )

我们处理的属性主要由nameidphoneemailaddress组成。此外,在某些情况下,名称是先/后分开的,在某些情况下是全名。

我认识到,为这些简单的属性修改文件应该不难,但是我们收到的文件数量和缺乏顺序使得在没有一点自动化的情况下简化流程非常困难。我还将转向标准化接收格式,但出于多种原因,这种格式即将出现,而不是立即解决。

感谢您分享的任何提示或指导。

【问题讨论】:

    标签: etl rapidminer data-munging


    【解决方案1】:

    你的问题比较广泛,所以很遗憾我不能给你完整的答案。但这里有一些关于我将如何解决你提到的问题的想法:

    • 对于一个完整的进程调度,RapidMiner Server 就是你所需要的 寻找。在这种情况下,您可以定义一个时间表(例如, 定期检查新文件),甚至定义一个 Web 服务来 触发流程。
    • 要根据文件类型选择正确的运算符,您可以 使用“循环文件”和宏提取的组合来获得 正确的类型并使用“分支”或“选择子流程” 切换到不同的输入路径。

    • “选择属性”运算符有一些非常强大的选项 仅选择特定子集。在你的例子中,我会去 类似于[pP]hone.* 的正则表达式以获得不同的拼写 变体。在这种情况下也很有帮助的是“重新排序 Attributes”操作符和“Rename by Replaceing”创建一个通用的 命名架构。

    构建更复杂的流程管道时的一般提示是在sub-processes 中组织您的不同任务并使用“执行流程”运算符。这使得一切都更具可读性和可维护性。此外,一个好的error handling 策略对于处理不可预见的数据格式也很重要。

    如需更多 RapidMiner 高级用户的详细解答和提示,我也强烈推荐 RapidMiner community

    我希望这能为您的项目提供一个良好的起点。

    【讨论】:

    • 非常感谢您的回答。这个问题有点含糊,因为我没有正确的语言来解释这个问题。你的回答给了我更好的背景。这很有意义,并为我们提供了很多工作。谢谢!
    • 我在这方面工作了一段时间,但每次我尝试这个时都会遇到一堵墙(“属性已经存在”错误)。我知道这是因为我将错误的东西放在循环中(或以错误的顺序)而不是在循环之外。有没有一个很好的例子我可以看看做类似的事情?或者,有没有人可以帮我解决这个问题?
    • 您好 Robert1er,我建议您向 RapidMiner 社区 (www.community.rapidminer.com) 询问具体的解决方案。那里的独角兽总是乐于助人。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-24
    • 1970-01-01
    • 2021-10-13
    • 2020-03-05
    • 2011-04-04
    相关资源
    最近更新 更多