问题标签 [data-munging]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
460 浏览

mysql - 将图像 url 保存到数据库表

我正在尝试将图像 url 保存到 MySQL 数据库表

列字段足够长。表和数据库使用 UTF-8 CI-general collat​​ion (IIRC)

网址看起来像这样:

http://example.com/media/images/47142000/jpg/_47142379_005857853-1.jpg

但他们是这样得救的:

http://example.com/media/images/47142000/jpg ...

似乎“_”的出现导致了 mySQL 问题。在将字符串保存到数据库之前,我是否需要对字符串进行 urlencode(或对字符串执行一些其他数据处理)?

0 投票
1 回答
730 浏览

jquery - 服务器端 Adob​​e AIR 应用程序

这听起来可能是一个非常愚蠢的问题,但是无论如何在非 UI 服务器(即 Linux)上以无头服务器端模式运行 Adob​​e AIR 应用程序?我正在尝试构建服务器端机器人以与 API (grapevinetalk.com) 交互,并且我想使用现有代码来做到这一点,而不必为新应用程序重新编写所有数据处理等。

我尝试移植的应用程序本质上是一个基于 jQuery 的 AIR 桌面应用程序,我希望将其重用于服务器端交互。我已经在 envjs.com 上尝试过 Rhino,但遇到了一些问题,所以我正在寻找替代方案。

谢谢

罗比

0 投票
3 回答
815 浏览

php - 数据处理和数据导入脚本

我需要编写一些脚本来在我的服务器上执行一些任务(运行 Ubuntu 服务器 8.04 TLS)。这些任务将定期运行,因此我将脚本作为 cron 作业运行。

我将任务分为“A 组”和“B 组”——因为(至少在我看来)它们有点不同。

任务组 A

  1. 从文件中导入数据并可能重新格式化它 - 通过重新格式化,我的意思是做一些事情,比如对数据进行清理,可能对其进行规范化,或者对数据的“列”进行计算

  2. 将整理好的数据导入数据库。目前,我主要使用 mySQL 进行绝大多数导入——尽管一些文件将被导入 sqlLite 数据库。

注意:这些文件将主要是文本文件,尽管其中一些文件是二进制格式(我自己的专有格式,由我开发的 C++ 应用程序编写)。

任务组 B

  1. 从数据库中提取数据
  2. 对数据执行计算并在数据库中插入或更新表。

我的编码经验主要是作为 C/C++ 开发人员,尽管在过去 2 年左右的时间里我也一直在使用 PHP(+ 一些与此问题无关的其他语言)。我来自 Windows 背景,所以我仍然在 Linux 环境中找到自己的立足点。

我的问题是——我需要编写脚本来执行我上面描述的任务。虽然我想我可以编写一些 C++ 应用程序用于 shell 脚本,但我认为用脚本语言编写它们可能会更好,但这可能是一个有缺陷的假设。我的想法是在脚本中修改内容会更容易——无需重建等来更改功能。此外,与 Perl、Python 等“自然”脚本语言相比,C++ 中的 C++ 数据处理往往​​涉及更多的代码行。

假设这里的大多数人都同意脚本是要走的路,这就是我的困境。我使用哪种脚本语言来执行上述任务(给出我的背景)?

我的直觉告诉我 Perl ( shudder ) 将是执行上述所有任务的最明显的选择。但是(这是一个很大的但是)。仅仅提到 Perl 就让我的脚趾发麻,因为前段时间我对它有过非常非常糟糕的体验(多年前买了 Perl Camel 书 + 'data munging with Perl',但仍然无法“理解”它感觉太陌生了。语法对我来说似乎很不自然-尽管我尝试学习了多少次-所以如果可能的话,我真的很想错过它。PHP(我已经知道),也不确定是在 CLI 上编写脚本的好人选(我没有看到很多关于如何执行此操作的示例等 - 所以我可能错了)。

我必须提到的最后一件事是,如果我必须学习一门新语言才能做到这一点,我不能(时间限制)花费超过一天的时间来学习这样做所需的关键命令/功能(一旦我实际部署了脚本,我总是可以在以后学习语言的细节)。

那么,您会推荐哪种脚本语言(PHP、Python、Perl,[在此处插入您最喜欢的])——最重要的是为什么?或者,我应该坚持编写在 shell 脚本中调用的小型 C++ 应用程序吗?

最后,如果你建议了一种脚本语言,你能用几行来说明吗(Perl mongers - 我在看你的方向[没什么太神秘的!])我如何使用你建议的语言来做我正在尝试的事情做即

  • 将 CSV 文件加载到某种数据结构中,您可以在其中轻松访问数据列以进行数据操作
  • 将列式数据转储到 mySQL 表中
  • 将 mySQL 表中的数据加载到允许以脚本语言访问列/行的数据结构中

希望这些片段能让我快速找出对我来说学习曲线最陡峭的语言——以及那些简单、优雅和高效的语言(希望这两个标准 [优雅和浅学习曲线] 不是正交的——尽管我怀疑他们可能是)。

0 投票
2 回答
986 浏览

perl - 哪些 Perl 模块适合数据处理?

九年前,当我开始使用 Perl 解析 HTML 和自由文本时,我阅读了经典的使用 Perl 进行数据处理。有人知道 David 是否计划更新这本书,或者是否有类似的书籍或网页解释了XML-TwigRegexp-Grammars等新的解析模块?

我认为在过去的九年里,有些模块仍然和以前一样好,有些是最新的,但有新的有趣的方法,有些有更好的替代品。例如,Parse-RecDescent仍然是自由文本解析的唯一选择,还是 Perl 6 影响的 Regexp-Grammars会在许多情况下替代它?

我已经有四年没有使用 Perl 进行有效的 HTML、XML 或自由文本数据挖掘了,所以我在这方面的工具包可能有点过时了。因此,对于 HTML 和 DOM 操作、链接提取/验证、Web 测试(如 Mechanize)、XML 操作和自由文本解析的任何反馈,来自与该领域当前 CPAN 模块保持同步的人们都将非常受欢迎。

我的工具包中添加了一些新功能:

仍在我的工具箱中:

0 投票
1 回答
344 浏览

xml - 从 WPF 应用程序调用 Perl 代码

我想要一些示例代码来学习如何调用 perl 模块,该模块处理来自 Winform/WPF 应用程序中 xml 文件的输入并在目录中返回转换后的 XML(基本上我使用 Perl 的数据处理功能)文件,或者如果返回错误输入 XML 本身就是错误的。我正在 Windows 7 64 位 VS 2010 上开发。

0 投票
3 回答
258 浏览

perl - 可插拔/动态数据处理/修改/转换 perl 模块?

来自 perlmonks 的交叉发布:

我必须在 $work 上清理一些粗糙的、古老的代码,在我尝试制作一个新模块之前,如果有人知道合适的东西,我很乐意使用现有的模块。

在运行时,我正在解析一个文件以确定我需要对一组数据进行哪些处理。

如果我要编写一个模块,我会尝试更通用(非 DBI 特定),但我的确切用例是这样的:

我阅读了一个 SQL 文件来确定要对数据库运行的查询。我解析顶部的评论并确定

  • A 列需要有 as/// 应用,
  • B 列需要转换为给定格式的日期,
  • C 列得到一种 tr///。
  • 此外,可以链接事物,以便 D 列可能 s///,然后说如果它不是 1 或 2,则将其设置为 3。

因此,当从数据库中获取数据时,程序会在返回数据之前应用各种(可能是堆叠的)转换。

目前,代码是一系列令人作呕的大而困难的 if 子句,处理极其难以阅读或维护的指令数组。

所以我想象的可能是一个对象,它将解析这些行(并另外公开一个功能接口),堆叠要应用的处理器列表,然后能够在传递的数据上执行它。

可选地,可以有一个名称/类别选项,以便可以动态地使用一个对象来仅为给定的名称/类别/列堆叠处理器。

一个传统人为设计的例子:

每个处理器(gsub、date、exchange)都是一个单独的子程序。可以定义插件以按名称添加更多。

所以显而易见的第一个问题是,有人知道我可以使用的模块吗?到目前为止,我唯一能找到的是 [mod://Hash::Transform],但由于我将确定在运行时动态执行哪些处理,所以我总是最终使用“复杂”选项,我d 仍然需要构建解析器/堆栈器。

有人知道我可能想要使用/包装的任何类似模块甚至是轻度相关的模块吗?

如果没有什么通用的可供公众消费(当然我的不是暗盘中唯一的),除了从 DBI 返回数据之外,是否有人对要记住的事情或接口建议或什至其他可能的用途有任何建议,文本::CSV 等?

如果我最终编写了一个新模块,是否有人有命名空间建议?我认为 Data:: 下的某些内容可能是合适的......“可插拔”这个词一直在脑海中浮现,因为我的用例让我想起了 PAM,但我真的没有什么好主意......

  • 数据::处理器::可插拔?
  • 数据::Munging::可配置?
  • 我::咀嚼::数据?
0 投票
1 回答
261 浏览

python - 为基于 Web 的数据访问/挖掘选择开发堆栈

我想知道社区中的不同人对小型团队 (3-5) 开发人员构建简单数据驱动应用程序的工具/语言选择有何看法。我们想做数据处理/分析/Datavis。

我们最终可能会在数据处理端使用 Hadoop,并在前端使用 javascript。理想情况下,我们也需要某种程度的 R 集成。

目前我最好的想法是 Django,Python,将 R 与 Rpy (http://rpy.sourceforge.net/) 和 Boto (http://code.google.com/p/boto/) 结合使用。

还有其他好的选择吗?尝试使用 JVM 路线是否会有任何重大的不利/不利方面?你会使用什么工具,为什么?

0 投票
9 回答
17484 浏览

python - Python:支持索引的内存对象数据库?

我正在做一些数据处理,如果我可以将一堆字典放在内存数据库中,然后对它运行简单的查询,这将变得相当简单。

例如,类似:

但是,有三个混杂因素:

  • 一些值将是 Python 对象,序列化它们是不可能的(太慢,破坏身份)。当然,我可以解决这个问题(例如,通过将所有项目存储在一个大列表中,然后在该列表中序列化它们的索引......但这可能需要相当多的摆弄)。
  • 将有成千上万的数据,我将对它们运行查找繁重的操作(如图形遍历),因此必须可以执行高效(即索引)查询。
  • 如示例中所示,数据是非结构化的,因此需要我预定义模式的系统会很棘手。

那么,这样的事情存在吗?还是我需要把一些东西拼凑在一起?

0 投票
3 回答
533 浏览

c# - 用 C# 编写脚本?

我已经广泛使用 Python 来完成各种临时数据处理和辅助任务。由于我正在学习 C#,我认为看看我是否可以用 C# 重写其中一些脚本会很有趣。

是否有一个可执行文件可以使用 .cs 文件并运行它 ala python?

0 投票
2 回答
8965 浏览

c# - 使用 C# 将 csv 文件读入 DataTable?

我有一些我不久前写的 Python 脚本,用来做一些数据处理。我需要将其中一些脚本“移植”到 C#。

Python 提供了一个 CSV 模块,它有助于将 CSV 数据从文件导入字典。我想在我的库中拥有相同的功能,但由于我是 C# 新手,所以决定来这里询问将 CSV 数据导入 DataTable 的最佳实践方法。

我是自己推出,还是有一个“CSV 模块”ala Python?