我将很快分析大量与网络流量相关的数据,并对其进行预处理以便进行分析。我发现R和SPSS是最受欢迎的统计分析工具之一。我还将生成大量图形和图表。因此,我想知道这两个软件之间的基本差异。
我不是在问哪个更好,而只是想知道它们的工作流程方面的差异(除了SPSS有GUI之外)。无论哪种情况下,我都会主要使用脚本进行工作,所以我想了解其他的区别。
我将很快分析大量与网络流量相关的数据,并对其进行预处理以便进行分析。我发现R和SPSS是最受欢迎的统计分析工具之一。我还将生成大量图形和图表。因此,我想知道这两个软件之间的基本差异。
我不是在问哪个更好,而只是想知道它们的工作流程方面的差异(除了SPSS有GUI之外)。无论哪种情况下,我都会主要使用脚本进行工作,所以我想了解其他的区别。
以下是我以前在R-help邮件列表中发布的内容,但我认为它很好地概述了R和SPSS之间的一般区别:
谈到计算机软件的用户友好性时,我喜欢使用汽车与公交车的比喻:
公交车很容易使用,您只需要知道要搭哪辆车,在哪个站上车,在哪个站下车(还需要支付车费)。另一方面,汽车需要更多的工作,您需要有某种类型的地图或路线(即使地图在您的脑海中),您需要不时加油,您需要了解道路规则(需要一种驾照类型)。汽车的巨大优势是它可以带您去公交车无法到达的许多地方,并且对于某些需要在公交车之间转移的旅行来说速度更快。
使用这个比喻,像SPSS这样的程序就像公交车,对于标准事物很容易使用,但如果您想做一些未经预编程的事情,则会非常令人沮丧。
R是一款四轮驱动SUV(尽管环保),后面装有自行车,顶部装有皮艇,乘客座位上放着好的步行和跑步鞋,后部装有登山和洞穴探险装备。
如果您花时间学习如何使用设备,R可以带您去任何想去的地方,但这需要比学习SPSS公交车站更长的时间。
虽然有适用于R的图形用户界面(GUI),但它也限制了易于使用的功能。 SPSS确实有脚本编写功能,使其不再仅仅是一辆公交车,但SPSS的一般哲学导向人们使用GUI而不是脚本。
odfWeave/inst/examples
)中查找formatting.odt及其输出。此外:相比Sweave,odfWeave可能是更好的选择,因为客户通常希望获得可编辑的报告版本。如果你在概述/实现中遇到问题,请告诉我。 - daroczigSPSS的初始工作流程需要付出昂贵的代价,而R是免费提供的。
R只有一种“脚本”语言,但不要认为它就是那样,实际上R是一种编程语言,具有出色的数据操作、统计和图形功能。SPSS具有“语法”、“脚本”,并且还可以使用Python进行脚本编写。
另一个重要因素是,SPSS将其数据压缩成电子表格结构。处理其他数据结构可能非常困难,但R天生适应这些处理。我不知道如何开始处理网络图形类型的数据,但是R中有一个包可以做到。
R还可以通过使用Sweave将工作流程与报告集成 - 您可以编写嵌入了R代码块的文档以生成绘图或表格,将文件运行经过系统后,报告将以PDF形式呈现。当你想要做每周报告或完成一项工作后,老板给你更新的数据集时,使用Sweave就很好。重新运行、检查,然后完成。
但是最终选择由您决定...
我在一家公司中与数据科学家一起工作,可以这样说:
话虽如此,我认为R在几乎所有其他方面都更好:
人们经常忽视的是,R还有许多协作功能(RStudio中的github集成和使用devtools进行简单的包构建)。
实际上,如果您的组织中的每个人都知道R,那么您只需要在github上维护一个基本包就可以共享所有内容。当然这不是常态,这就是为什么我认为尽管SPSS是个更差的产品,但依然有市场需求。
我没有数据来证明,但根据我的经验,我可以告诉你一件事情:
SPSS比R慢得多。(当然,这里的“慢得多”是非常之多)
这种差距的大小可能与C++和R之间的差距一样大。
例如,在R中,我从来没有等待超过几秒钟。而使用SPSS和类似的数据,则需要等待超过10分钟的计算时间。
另外说一句不相关的事情:在我看来,在关于R速度的最近讨论中,人们有点忽略了这一点(即与SPSS的比较)。此外,我很惊讶这个讨论曾经出现过一段时间,然后就悄无声息地消失了。
@Henrik,我在SPSS上完成了你提到的相同任务(C++和R),结果发现SPSS在这方面比R更快。在我的情况下,SPSS大约快了7倍。我对此感到惊讶。
这是我在SPSS中使用的代码。
data list free
/x (f8.3).
begin data
1
end data.
comp n = 1e6.
comp t1 = $time.
loop #rep = 1 to 10.
comp x = 1.
loop #i=1 to n.
comp x = 1/(1+x).
end loop.
end loop.
comp t2 = $time.
comp elipsed = t2 - t1.
form elipsed (f8.2).
exe.