哪些编程语言适合统计学?

32

最近我在进行一些更多的统计分析,我想知道有没有特别适合这种目的的编程语言。我知道 R,但我希望有一个更通用的语言(或者说R就是通用的吗?)。

你们有什么建议吗?有没有语法/语义特别面向此领域的语言?或者有没有出色的库的语言?


2
有趣的问题,因为有普适性的限制。当您只想在该领域中完成部分工作时,使用DSL可能会很麻烦。 - dsimcha
Jason的通用性约束,正如在对Dirk答案的评论中所描述的那样,实际上非常适合R的优势。在这方面将R与SAS、Stata、Matlab或其他任何东西进行比较是错误的。 - Eduardo Leoni
16个回答

2

Matlab 在统计方面也很擅长。但它并不是完全免费的。

Octave 是一个免费的克隆版本,也许可以满足您的需求。


2

我的一个朋友专注于市场统计,使用的是SAS。我对它不是很了解 - 它似乎不像一个“真正”的语言,但值得一试。

我非常支持具有R绑定的Python。


1
SAS非常昂贵。如果想要购买付费的统计软件,还有更多选择(也有更便宜的)如:SPSS、JMP、Mathlab等等。个人而言,我更喜欢R :) - Tal Galili
1
+1,Python和R一起使用是梦想成真。请查看rpy2:http://rpy.sourceforge.net/rpy2.html - Mark

2
请查看 RooFit 包,它是用于 ROOT 的。例如,粒子物理学家使用它进行数据分析。
ROOT 是一个 C++ 框架,同时还带有 Python 和 Ruby 绑定。它还包括有限的交互式 C++ 解释器。

2
我也想推荐 R。相对于 STATA 或者甚至是 SPSS,R 对于非程序员来说可能不太容易掌握。尽管我猜平均的 Stackoverflow 用户比我更像程序员。话虽如此,我还是想简要概述一下,因为我从一个用户(经济学家)的角度看过几种统计软件。
STATA 仍然是大多数经济学家的首选,确实有其优点。STATA 的图形用户界面有助于掌握众多选项和统计函数。此外,STATA 出现了唯一一个与基准相近的邮件列表:无与伦比的 R 邮件列表。尽管可以编写复杂的 .do 文件或从网上下载一些文件,但 STATA 可能没有 R 那么接近编程语言,但仍然提供了一个用于统计目的的不错的编程语言。根据数据集大小,您应该检查需要什么许可证。
您还可以使用 SPSS,它甚至比 STATA 更适合 GUI 工具,并且在经济计量工作(如 TOBIT 模型或面板回归,特别是离散选择模型)方面稍微不那么全面。
还有 Eviews——不幸的是,我已经忘记了大部分内容,只在我的研究中使用了它进行了几个简单的回归分析。因此,我在这里只是简单地提一下它。同样是 GAUSS,看起来比其他软件更数学化。最近听说了 Octave,也更加数学化。
对于我的个人使用,R 是任何其他软件中最好的。偶尔我会将其与 Python 组合使用或连接到 MySQL 或 PostgreSQL 数据库中,效果也很不错。R 真正帮助您学习统计学,因为为了做某件事情,您需要理解更多,而不仅仅是通过 SPSS 等方式点击您的方式。但是,如果您需要 GUI,则可以尝试 RKward 或考虑在 Windows 上安装 Komodo/Sciviews-R 或 Tinn-R。后两个不是 GUI,而是编辑器,它们支持代码高亮和代码建议,这也有助于完成工作。Farnsworth Econometrics in R 是一个很好的阅读材料。啊!我不能忘记提到绘图。Hadley Wickham 的 ggplot2 包非常好用。这是创建图形的最佳方法,如果您不需要交互式图形。最终,R 确实是最灵活的软件包:您甚至可以将其安装在 Web 服务器上并构建一些漂亮的 Web 界面——天空是极限。

使用Python进行解析,将数据写入本地SQL数据库,创建一些漂亮的视图,然后例如使用RMySQL。这值得一试! - Matt Bannert

1

APL 显然是统计工作中最好的语言之一。虽然它不是通用目的的...

它需要一个特殊的键盘和字体,因为它不使用ASCII码。

参见在一行APL中实现康威生命游戏,了解一下可以用它做什么。


APL跟其他编程语言一样通用,只是学起来比较难。+1 为怀旧之情。 - Norman Ramsey
1
如果你在考虑APL,为什么不选择J或K呢?它们更实用一些,但使用的基本方法相同。 - Shane

0

作为一名统计学的学生,我发现R是所有与统计相关的软件中最好的。也许它有能力在统计方面做任何事情。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接