Blog

想找一个统计工具

有这个想法很长时间了。

主要是工作中有一些分析表格数据的工作,如果人工的在 Excel 里面用眼睛去看,实在不是一个健康的活。于是我自然的用上了计算机。需要用的操作其实很简单,就是计数、Excel 的 VLOOKUP 功能找出对应的数值再求乘积、求和,我写过几个程序来自动统计。

不过这也不能完全解决问题。一方面,这样的应用我一般通过 Ruby 来完成,但Ruby在Windows系统上不方便。而且我们公司的电脑只练了公司的内网,有些需要的组件、以及要查找的资料,都不是很方便。但我要处理的数据都只能在公司的内网才能访问的网站导出,我又不能用我的 MacBook Pro 完成所有的工作。所以只能在公司的电脑上将文件导出,然后通过部门邮箱(这个可以给外网邮箱发邮件)发到我自己的邮箱里,再从自己的电脑上收取邮件,然后还需要进行转码,将 GB2312 编码转换为 UTF-8 编码,再继续操作。后来,我觉得这样实在是麻烦,就把我的 Ruby 程序移植成了 Java 程序,在公司的电脑上也能够运行。不过程序的体积就变大了几倍,一些本来简单的列表操作还要弄个迭代器,写程序的时候能把人烦死。

另一方面,成型的程序毕竟死板,有时领导要求别的什么结果,就需要修改程序。而我的程序成为了 Java 版的,我为了一个比较简单的功能,就修改了几次才完成。我是一点都不想在碰那些代码。

还有一些其他的缺陷,让我觉得苦恼。比如公司系统导出的数据,都是 Excel 的,要用程序来处理,需要我先手工转换成 CSV 的格式。这也挺麻烦。我通过查找文档,会了用 Java 语言操作 Excel 文件的方法,但这实在是繁琐,要一个单元格一个单元格的读取或写入,而不能以行为单位来操作,所以需要很多的代码来操作。而 Ruby 下对 Excel 的操作,我还刚开始看。

总之,这些不足让我觉得它们对我目前来说都不怎么方便。我想要一种快速处理的工具,要有一个 REPL,可以维护一张或多张表格,通过条件来筛选数据,并对数据进行统计,最好还能将指令保存下来,形成宏,留着以后使用。这么一看,也许我需要的是数据库?

这可是个让我比较惊讶的发现。在写这篇文章的时候,我心里想的是类似 R 语言之类的统计工具。其实我也只是听说了这么个名,实际上如何统计,是否符合我的要求,我还真不清楚。还有一个想法是 LISP,我在上厕所的时候想了一下,能否实行还有待实验。结果写到了这里,数据库自认从我脑海里浮现出来了——也许我在公司的电脑上安装一个 SQLite 就能解决问题?当然这还有待实际测试。

没有评论

Leave a Reply