Python 数据识别、解析、过滤和转换——GUI?

Python 数据识别、解析、过滤和转换——GUI?,python,ruby,perl,kettle,data-manipulation,Python,Ruby,Perl,Kettle,Data Manipulation,寻找一个非基于云的开源应用程序来进行数据转换;虽然对于一个为数据转换而构建的杀手级(我指的是杀手级)应用程序,我可能愿意花费1000美元 我看了、、等等 Perl、Python、Ruby这些显然是语言,但无法找到任何仅用于处理数据的框架/dsl;这意味着它们不是一个很好的开发环境,这意味着没有用于构建正则表达式、输入/输出(CSV、XML、JDBC、REST等)的内置GUI,没有用于测试一行又一行数据的调试器——它们也不错,只是不是我想要的,这是一个用于复杂数据转换的GUI;也就是说,我希望GU

寻找一个非基于云的开源应用程序来进行数据转换;虽然对于一个为数据转换而构建的杀手级(我指的是杀手级)应用程序,我可能愿意花费1000美元

我看了、、等等

Perl、Python、Ruby这些显然是语言,但无法找到任何仅用于处理数据的框架/dsl;这意味着它们不是一个很好的开发环境,这意味着没有用于构建正则表达式、输入/输出(CSV、XML、JDBC、REST等)的内置GUI,没有用于测试一行又一行数据的调试器——它们也不错,只是不是我想要的,这是一个用于复杂数据转换的GUI;也就是说,我希望GUI/app文件是用脚本语言编写的,而不是仅仅存储在一些非人类可读的XML/ASCII文件中

Kapow Katalyst专门用于通过HTTP(HTML、CSS、RSS、JavaScript等)访问数据。它有一个很好的GUI用于转换非结构化文本,但这不是它的核心价值,而且非常昂贵。它在遍历文档名称空间路径方面做得很好;猜测它只是后端的XPath,因为语法似乎是相同的

Pentaho Kettle有一个很好的GUI,用于输入/输出最常见的数据存储,并有自己处理数据的能力;这很好,只是有一个很小的学习曲线。Kettle的调试器还可以,因为数据很容易查看,但是错误和异常没有与输出线程化,并且没有办法真正调试问题;这意味着您不能重新加载输出/错误/异常,但可以查看系统反馈。总而言之,Kettle数据转换是u________;好吧,让我觉得我一定错过了什么,因为我完全被“如果不可能,就用JavaScript编写转换”所迷惑;嗯,什么

那么,有什么建议吗?请务必意识到,我还没有制定任何规范,但我想如果您真的使用一个产品进行数据挖掘,我很想了解它;我想,即使是优秀的

但总体而言,目前我正在寻找一种能够处理1000-100000行和10-100列的产品。如果它能分析数据集,那就太酷了,这是一个功能,但不是很好。我还喜欢内置单元测试,这意味着我能够构建数据的控制集,并根据控制集运行所做的更改。然后,我希望能够在构建转换时有选择地过滤掉行和列,而不改变构建;例如,我通过转换运行一个数据集,过滤结果,下一次运行时,这些数据集在第一次“逻辑”出现时自动被阻止;这反过来又意味着要“查看”的数据更少,每次增强迭代的运行时间减少;如果我过滤掉应用程序正在跟踪的行/列(并且输出被过滤掉),那将是非常好的。和单元测试/突出显示任何更改。如果我做了一个会影响应用程序日志的更改,并且它能够基于我的“断开一个分支”跟踪单元测试-它会给我一个警告,让我转储存储的数据分支。。。和/或跟踪下一代输出中的主键差异,甚至尝试使用模糊逻辑匹配主键。是的,我知道这是一个白日梦,但嘿,我想我会问,以防万一有什么我从没见过的东西


请随意评论,我很乐意回答任何问题,或提供更多信息

我不确定你到底想做什么样的数据或转换,但如果主要是数学转换,也许你可以试试,或者。如果更多的是数据仓库风格,请尝试开源ETL工具,如Community Edition或。

Talend将需要超过5分钟的时间,可能需要将近1个小时才能开始连接基本转换,并能够满足保持版本控制转换的要求。您描述了一个管道过程,当您知道如何操作时,可以轻松地在Talend中完成,在该过程中,当相同的原始数据经过各种转换和过滤时,您在项目中有多个输入和输出,直到它作为您想要的最终输出到达。然后,您可以安排作业在类似数据上重复该过程。回去多花点时间和泰伦德在一起,我相信你会在你需要的事情上成功的

我也是谷歌精炼的提交者之一,在日常工作中也使用Talend。实际上,有时我会在Google Refine中为Talend first建模转换。(有时甚至使用Refine对borked ETL转换本身执行清理!LOL)我可以告诉你,我与Talend的经验在Google Refine的一些功能中起到了很小的作用。例如,Talend和Google Refine都有用于转换的表达式编辑器的概念(如果需要,Talend可以使用Java语言)


GoogleRefine永远不会是一个ETL工具,因为我们设计它的目的不是为了在这个领域竞争,因为ETL通常用于大型数据仓库后端处理和转换。然而,我们设计Google Refine是为了补充现有的ETL工具,如Talend,它允许轻松的实时预览对您的转换和清理做出明智的决定,如果您的数据不是难以置信的巨大,那么您可以选择在Refine中执行您需要的操作。

感谢您的建议,下载了Talend CE,但经过5分钟的“尝试”后,我放弃了。我现在就来看看克洛弗、贾斯佩雷特和吉特比特。至于数学转换,目前还不需要,但我还是会查看应用程序,这样我对它们有一个粗略的感觉。再次感谢!很酷,谢谢,你用过吗?看起来像