我将尽快分析大量与网络流量相关的数据,并将预处理数据以分析数据。我发现R和SPS是统计分析最受欢迎的工具之一。我还将生成很多图形和图表。因此,我想知道这两个软件之间的基本区别是什么。

我不是在问哪个更好,而只是想知道两者之间的工作流程有什么区别(除了SPSS具有GUI之外)。无论如何,我都会主要使用脚本,因此我想知道其他差异。

有帮助吗?

解决方案

我在一家使用SPSS进行大多数数据分析的公司工作,出于各种原因 - 我已经开始尝试使用R进行越来越多的分析。我遇到的一些最大区别包括:

  1. 表的输出-SPSS具有基本表,通用表,自定义表等,这些都已输出到该漂亮的数据查看器或他们所说的任何内容。这些可以相对容易地将其运送到Word文档或Excel表中,以进行进一步的分析 /演示。 R中的等效功能涉及学习 LaTex 或使用 odfWeave 或者 Lyx 或那种性质的东西。
  2. 数据标签 - > SPSS在变量标签和值标签上做得很好。我还没有找到可用于完成相同任务的强大解决方案。
  3. 您提到您将在大部分作品上脚本编写,而我个人发现SPSS的脚本语法绝对可怕,以至于我尽可能停止与SPSS合作。 R语法似乎更加合乎逻辑,并且更遵循编程标准,并且如果您遇到麻烦(例如),就有一个非常活跃的社区可以依靠。我没有找到一个好的SPSS社区来问我什么时候遇到问题的问题。

其他人则指出了这些程序的成本和功能方面的一些很大差异。如果您必须与他人合作,那么他们与SPSS或R的舒适度应该扮演一个因素,因为您不想成为小组中唯一可以在将来写的脚本或编辑脚本的人。

如果您要学习r,那么STATS Exchange网站上的这篇文章有很多用于学习R的大量资源: https://stats.stackexchange.com/questions/138/resources-for-learning-r

其他提示

这是我前一段时间发布到R-HELP邮件列表的内容,但我认为它给出了R和SPSS的一般差异的高度概述:

在谈论计算机软件的用户友好性时,我喜欢汽车与公共汽车的类比:

公共汽车非常易于使用,您只需要知道要上哪辆公共汽车,去哪里以及在哪里下车(您需要支付票价)。另一方面,汽车需要更多的工作,您需要拥有某种类型的地图或方向(即使地图在您的脑海中),您也需要时不时地将气体放入道路(有某种类型的驾驶执照)。这辆车的最大优势是,它可以带您一堆公共汽车没有去的地方,并且对于需要在公共汽车之间转移的某些旅行会更快。

使用此类比程序,例如SPSS是公共汽车,易于用于标准内容,但是如果您想做尚未预先编程的事情,则非常令人沮丧。

R是一款4轮驱动SUV(尽管环保),后部有一辆自行车,顶部的皮划艇,骑行座椅上的良好步行和跑步鞋,背面的山攀爬和小斜纹装备。

如果您花时间去学习如何使用设备,则可以将您带到任何地方,但要比学习公共汽车停靠在SPS中所需的时间更长。

R GUI为R的GUIS使其更容易使用,但也限制了可以轻松使用的功能。 SPSS确实有脚本,这使它不仅仅是公共汽车,但是SPSS的总体系统哲学将人们带入GUI而不是脚本。

SPSS的最初工作流程涉及为写大脂肪检查的合理性。 r是免费的。

r有一种用于“脚本”的语言,但不要这样想,R实际上是一种编程语言,具有出色的数据操纵,统计信息和图形功能。SPSS具有“语法”,“脚本”,并且是也可以在Python中进行拼写。

另一个最重要的是,SPSS将其数据挤入电子表格表结构中。处理其他数据结构可能非常困难,但自然而然地是R.我不知道在哪里开始处理SPSS中的网络图类型数据,但是对于R。

另外,使用R您可以通过使用Sweave将工作流程与报告集成在一起 - 您可以编写带有嵌入的R代码的文档,以生成图或表格,通过系统运行文件,然后将报告作为PDF出现。非常适合当您想每周进行一次报告,或者您进行工作体系,然后老板为您提供更新的数据集。重新运行,阅读,完成。

但是你知道,你的电话...

好吧,您是一个不错的程序员吗?如果是的话,那么就值得学习R。在操纵和统计建模方面,您可以比使用SPSS做更多的数据,而您的图形也可能会更好。另一方面,如果您以前从未真正进行过编程,或者发现花几个月成为程序员的想法令人生畏,那么您可能会从SPS中获得更多的价值。您可以用R作为成熟的编程语言潜入其力量的情况下可以做的事情水平并不能证明这一点是合理的。

还有另一种选择 - 协作。您知道您可以在项目上工作的人(您不说是学术还是行业,但是无论哪种方式...),谁知道R?

我在公司中都与两者一起工作,可以说以下内容:

  • 如果您有一支由不同的人组成的团队(并非所有数据科学家),那么SPSS是有用的,因为它(相对)可以理解。例如,如果用户打算运行模型以获取输出(销售估算等),则SPSS清晰易于使用。

也就是说,我几乎在其他所有意义上都发现R更好:

  • r更快(尽管有时值得商bat)
  • 如前所述,SPSS中的语法很棒(我不能足够强调)。另一方面,R学习可能很痛苦,但是在线上有很多资源,最终由于您可以做的不同而支付的钱更多。
  • 同样,就像其他所有人所说的那样,天空是R.吨的包装,资源等等的极限:随意做的独立。在我的组织中,我们有一些非常高的功能可以完成很多工作。困难的部分是一次创建它们,但随后它们执行了复杂的任务,SPS会在一个永无止境的画布中纠缠。对于循环之类的东西,这是特别的。

它经常被忽略,但是R在团队之间也有很多功能可以合作(GitHub与Rstudio集成,以及与DevTools一起使用的简单包装)。

实际上,如果您组织中的每个人都知道R,那么您所需的只是在Github上维护一个基本软件包以分享所有内容。当然,这不是常态,这就是为什么我认为SPSS虽然是最糟糕的产品,但仍然有一个市场。

我没有数据,但是根据我的经验,我可以告诉您一件事:

SPSS比R慢很多. 。 (有很多,我真的很重要)

差异的大小可能与介于之间的差异一样大 C ++和R.

例如,我不必在R中等待长达几秒钟的时间。使用SPSS和类似的数据,我的计算花费了超过10分钟。

作为一个无关的旁注:在我看来,在最近关于R速度的讨论中,这一点被以某种方式忽略了(即与SPSS的比较)。此外,我感到惊讶的是,这次讨论是如何出现的一段时间,并默默地再次消失了。

上面有一些很好的回应,但我将尝试提供2美分。我的部门完全依靠SPS来进行我们的工作,但是最近几个月,我一直在做出有意识的努力来学习R;部分原因是上述列出的一些原因(速度,庞大的数据结构,可用包装等)

也就是说,这是我一路走来的一些东西:

  1. 除非您有一些经验编程,否则我认为在ctables中创建摘要表会破坏R中的任何可用选项。

  2. 脚本时,SPSS的确速度较慢,是的,SPSS语法很糟糕。也就是说,我发现SPS中的SCIPT始终可以得到改进,但要谨慎使用执行命令。

  3. SPSS和R可以彼此接口,尽管这似乎是一种方法(仅当在SPSS内部使用R内部而不是相反时)。也就是说,除了我想使用GGPLOT2或其他一些高级数据管理技术之外,我发现这几乎没有用。 (我鄙视SPSS宏)。

  4. 我长期以来一直认为,在SPSS中创建的“报告”工作远不如其他解决方案。如上所述,如果您可以利用乳胶和毛发,您将对高效的工作流感到非常满意。

  5. 我能够通过利用SPS中的OMS进行一些高级分析。几乎所有内容都可以路由到新的数据集,但是我发现大多数SPSS用户都不使用此功能。另外,在查看R中的示例时,比使用OMS感觉“容易”。

简而言之,当我无法在R中迅速弄清楚时,我发现自己在使用SPSS,但是我衷心地打算摆脱SPSS并在不久的将来完全使用R。

SPSS提供了一个GUI,可以轻松整合现有的R程序或开发新程序。有关更多信息,请参阅 SPSS社区 在IBM开发人员的作品上。

@henrik,我完成了您提到的同一任务(C ++和R)在SPSS上。事实证明,与R上的R相比,SPSS比R更快。就我而言,SPS是Aprox。 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.

观看此视频,为什么组合SPSS和R ...

关联

http://bluemixanalytics.wordpress.com/2014/08/08/29/7-good-reasons-ton-to-combine-ibm-spss-spss-analytics-and-anlalytics-and-r/-r/

如果您安装了R的兼容副本,则可以从IBM SPSS Modeler连接到它,并使用可以在IBM SPSS Modeler中部署的自定义R算法进行模型构建和模型评分。您还必须拥有IBM SPSS Modeler的副本 - 安装R的必需品。 IBM SPSS Modeler- R的必需品为您提供了开始开发自定义R应用程序的工具,以与IBM SPSS Modeler一起使用。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top