似乎很多人(包括我在内)都喜欢在Excel中进行探索性数据分析。某些限制(例如,电子表格中允许的行数)是很麻烦的,但是在大多数情况下,并非无法使用Excel来处理数据。
但是,McCullough和Heiser撰写的一篇论文却大声尖叫,如果您尝试使用Excel,您将错误地获得所有结果-甚至可能会陷入困境。
本文是正确的还是有偏见的?作者听起来确实讨厌微软。
似乎很多人(包括我在内)都喜欢在Excel中进行探索性数据分析。某些限制(例如,电子表格中允许的行数)是很麻烦的,但是在大多数情况下,并非无法使用Excel来处理数据。
但是,McCullough和Heiser撰写的一篇论文却大声尖叫,如果您尝试使用Excel,您将错误地获得所有结果-甚至可能会陷入困境。
本文是正确的还是有偏见的?作者听起来确实讨厌微软。
Answers:
使用正确的工具完成正确的工作,并充分利用您熟悉的工具的优势。
在Excel的情况下,存在一些突出的问题:
即使您的数据适合一个电子表格,也请不要使用电子表格来管理数据。您只是在寻求麻烦,可怕的麻烦。几乎没有防止印刷错误,大量混合数据,截断数据值等的保护措施。
许多统计功能确实被破坏了。t分布就是其中之一。
默认图形非常糟糕。
它缺少一些基本的统计图形,尤其是箱线图和直方图。
随机数生成器是一个笑话(尽管这样做对于教育目的仍然有效)。
避免使用高级功能和大多数外接程序;他们是c ** p。但这只是安全计算的一般原则:如果您不确定某个函数在做什么,请不要使用它。坚持使用低级函数(包括算术函数,排序,exp,ln,trig函数以及(在一定范围内)正态分布函数)。 永远不要使用产生图形的加载项:这将是可怕的。(注意:从头开始创建您自己的概率图非常简单。它们将是正确的且高度可定制的。)
但是,有以下优点:
它的基本数值计算与双精度浮点数一样精确。它们包括一些有用的参数,例如对数伽玛。
将控件包装在电子表格中的输入框周围非常容易,从而可以轻松创建动态仿真。
如果您需要与非统计人员共享计算,那么不管电子表格多么便宜,大多数人都会对电子表格感到满意,而对统计软件则完全不满意。
编写有效的数字宏非常容易,包括移植与VBA十分接近的旧版Fortran代码。而且,VBA的执行速度相当快。(例如,我有一些代码可以从头开始以及快速傅立叶变换的三种不同实现方式准确地计算出非中心t分布。)
它支持一些有效的仿真和Monte-Carlo附加程序,例如Crystal Ball和@Risk。(顺便说一下,他们使用了自己的RNG,我检查过。)
直接与(少量)数据进行交互的即时性是无与伦比的:它比任何统计数据包,Mathematica等都要好。当用作具有大量存储量的巨型计算器时,电子表格确实可以独立使用。
使用健壮和可靠的方法来获得良好的 EDA并不容易,但是一旦完成一次,便可以快速重新设置它。使用Excel,您可以有效地重现Tukey EDA书中的所有计算(尽管仅是一些图),包括对n路表的中值抛光(尽管有点麻烦)。
在直接回答原始问题时,该论文有一个偏见:它侧重于Excel最弱的材料,而胜任的统计学家最不可能使用的材料。但是,这并不是对本文的批评,因为需要广播这样的警告。
=TINV(2*p,df)
从0.01到几乎为0的p值,并将它们与正确的值进行比较。(我检查了df的范围是2到32。)错误从第6个有效数字开始,然后一旦p在1.E-5或更低时爆炸。即使p的这些值很小,它们也是要测试的现实值,因为它们对于多重比较测试和计算与t分布相关的值(例如非中心t)至关重要。
关于在生物信息学设置中使用Excel的有趣论文是:
错误的标识符:在生物信息学中使用Excel时,BMC Bioinformatics,2004(链接)可能会无意中引入基因名称错误。
这篇简短的文章描述了Excel中自动类型转换的问题(特别是日期和浮点转换)。例如,基因名称Sept2转换为2-Sept。您实际上可以在联机数据库中找到此错误。
使用Excel管理中到大量数据非常危险。错误可能很容易蔓延,而无需用户注意。
好吧,本文是正确还是有偏见的问题应该很容易:您可以复制他们的一些分析,看看是否得到相同的答案。
McCullough多年来一直在将不同版本的MS Excel分开使用,显然MS尚未找到解决他几年前在先前版本中指出的错误的合适方法。
我在Excel中处理数据没有问题。但老实说,我不会在Excel中进行“严重”分析。我的主要问题不会是不准确(我想这很少会是问题),但是一年后当审阅者或我的老板问我为什么不做X时,不可能跟踪和复制我的分析-您可以保存您的X用注释的R代码编写工作和您的盲区,但在Excel中却没有有意义的方式。
顺便说一句,有关使用Google电子表格的问题引起了对此的对比(因此,有趣)。
我想到的是一篇看上去不太悲观的较早的论文,但在您提到的论文中仅作了少量引用:Keeling和Pavur,对九种统计软件包的可靠性进行的比较研究(CSDA 2007 51:3811)。但是现在,我在硬盘上找到了您的。2008年也有一个特刊,请参阅Microsoft Excel 2007的“特刊”部分,以及最近在《统计软件杂志:电子表格的数值准确性》中的最新文章。
我认为这是一个长期的辩论,您会发现有关Excel用于统计计算的可靠性的各种论文/观点。我认为讨论的层次不同(您打算进行哪种分析,是否依赖内部求解器,是否存在进入给定模型的非线性项等),并且可能会出现数值不准确的根源由于适当的计算错误或设计选择问题;这很好地总结在
M. Altman,J。Gill和MP McDonald, 《社会科学家统计计算中的数值问题》,威利,2004年。
现在,对于探索性数据分析,有多种替代方法可以提供增强的可视化功能,多变量和动态图形,例如GGobi,但请参阅此Wiki上的相关主题。
但是,显然,您提出的第一点是解决另一个问题(IMO),即使用电子表格处理大数据集的问题:根本不可能将大的csv文件导入Excel(我正在考虑基因组数据,但它适用于其他类型的高维数据)。它不是为此目的而构建的。
论文和其他参与者指出了技术上的弱点。Whuber在概述其至少一些优势方面做得很好。我个人在Excel中进行了大量的统计工作(假设检验,线性回归和多元回归),并且喜欢它。我使用的Excel 2003的容量为256列和65,000行,可以处理大约100%的数据集。我知道Excel 2007已将该功能极大地扩展了(数以百万计的行)。
正如Whuber所提到的,Excel还可以作为众多出色的附加软件的启动平台,这些附加软件都非常强大且易于使用。我正在考虑将Crystal Ball和@Risk用于蒙特卡洛模拟;XLStat提供强大的统计和数据分析功能;最适合优化的是什么。而这样的例子不胜枚举。就像Excel相当于iPod或iPad一样,具有成千上万种令人难以置信的惊人应用程序。授予Excel Apps并不便宜。但是,就他们的能力而言,他们通常是很划算的。
就模型文档而言,插入文本框非常容易,您可以在其中直接编写一本有关您的方法论,您的资料等的书。您还可以在任何单元格中插入注释。因此,如果有的话,Excel确实非常有助于简化嵌入式文档。
关于您为什么不想使用excel的另一个很好的参考资料是:
如果您发现自己确实需要使用excel(某些学术部门坚持认为),那么我建议您使用Rexcel插件。这使您可以使用Excel进行界面连接,但可以使用R程序作为计算引擎。您无需知道R即可使用它,可以使用下拉菜单和对话框,但如果需要,您可以做更多的事情。由于R在进行计算,因此它们比Excel更值得信赖,并且您拥有更好的图表,箱线图以及excel中缺少的其他图表。它甚至可以与excel中的自动单元格更新一起使用(尽管如果每次都有大量复杂的分析需要重新计算,这会使事情变慢)。它不能解决电子表格成瘾页面中的所有问题,但是与使用纯Excel相比,它是一个巨大的改进。
使用合适的插件,Excel可以很好地用于探索性数据分析和线性回归分析。有许多商业产品,尽管其中大多数在产品输出质量方面都有些不足(它们并没有充分利用Excel的图表选项或与其他Office应用程序链接的能力),并且通常,它们不如数据可视化和表示那样好。他们还倾向于不支持纪律化的建模方法,在这种方法中(除其他事项外)您需要为工作记录良好的审计线索。这是一个免费的插件“ RegressIt”,可解决许多此类问题:http ://regressit.com 。它为探索性分析提供了很好的支持(包括生成并行时间序列图和具有多达50个变量的散点图矩阵的能力),它使应用数据转换(例如滞后,记录和差分)变得很容易(通常不应用)适当地由天真的回归用户使用),它提供了非常详细的表格和图表输出,以支持数据分析的最佳实践,并且维护了一个审计跟踪工作表,该工作表便于并排比较模型并记录哪些模型按什么顺序安装。如果您要处理多元数据,并且至少某些工作是在Excel环境中进行的,则它可以很好地补充您可能使用的其他任何方法。
R
SAS或SAS 更准确)。