数据科学家的基本技能

时间:2010-05-18 19:13:36

标签: r

数据科学家的武器库中有哪些相关技能?随着每天都有新技术的出现,人们如何选择必需品?

与此讨论密切相关的一些想法:

  • 知道SQL和使用MySQL之类的数据库,PostgreSQL在NoSql和非关系型数据库出现之前一直很好。 MongoDB,CouchDB等越来越受欢迎,可以处理网络规模的数据。
  • 了解像R这样的统计工具足以进行分析,但是要创建应用程序,可能需要将Java,Python和其他类似工具添加到列表中。
  • 数据现在以文本,网址,多媒体的形式出现,仅举几例,并且有与其操作相关的不同范例。
  • 集群计算,并行计算,云,Amazon EC2,Hadoop?
  • OLS回归现在有人工神经网络,随机森林和其他相对奇特的机器学习/数据挖掘算法。对于公司

思想?

11 个答案:

答案 0 :(得分:23)

引用Hadley's phd thesis的简介:

  

首先,您可以获得表格中的数据   你可以合作......第二,你   绘制数据以了解什么   正在进行......第三,你迭代   在图形和模型之间构建一个   简洁的定量总结   数据...最后,你回头看看   你做了什么,并考虑   你需要做些什么工具才能做得更好   未来

步骤1几乎肯定涉及数据整理,并且可能涉及数据库访问或网络抓取。了解创建数据的人员也很有用。 (我是在'网络'下提交的。)

第2步意味着可视化/绘图技巧。

第3步意味着统计或建模技巧。由于这是一个愚蠢的广泛类别,委托给建模者的能力也是一项有用的技能。

最后一步主要是关于内省和管理型技能等软技能。

问题中也提到了软件技能,我同意它们非常方便。 Software Carpentry列出了您应具备的所有基本软件技能。

答案 1 :(得分:21)

只是为其他人提出一些想法来阐述:

在一些可笑的高级抽象中,所有数据工作都涉及以下步骤:

  • 数据收集
  • 数据存储/检索
  • 数据处理/合成/建模
  • 结果报告
  • 故事讲述

数据科学家至少应该至少具备某些技能。但根据专业,可能会在有限的范围内花费更多的时间。

答案 2 :(得分:12)

JD很棒,而且对于这些想法更深入一点,请阅读Michael Driscoll的优秀帖子The Three Sexy Skills of Data Geeks

  1. 技能#1 :统计(学习)
  2. 技能#2 :数据Munging(苦难)
  3. 技能#3 :可视化(讲故事)

答案 3 :(得分:10)

dataist,问题通过一个很好的维恩图以一般方式解决:

venn diagram

答案 4 :(得分:5)

JD在头上打了它:讲故事。虽然他确实忘记了其他重要的故事:你为什么使用<在这里插入花式技术>的故事。能够回答这个问题是你可以发展的最重要的技能。

其余的只是锤子。不要误会我的意思,像R这样的东西很棒。 R是一整包锤子,但重要的是知道如何使用你的锤子以及诸如此类的东西来制造有用的东西。

答案 5 :(得分:4)

我认为掌握一两个商业数据库非常重要。在我咨询的财务领域,我经常在分布式服务器上看到大型铁和SQL Server上的DB / 2和Oracle。这基本上意味着能够读写SQL代码。您需要能够从存储和分析工具中获取数据。

在分析工具方面,我认为R越来越重要。我也认为知道如何使用至少一个其他stat包是非常有利的。这可能是SAS或SPSS ......这实际上取决于您所在的公司或客户以及他们的期望。

最后,你可以对所有这些包装有一个令人难以置信的把握,但仍然不是很有价值。在特定领域拥有相当数量的主题专业知识非常重要,并且能够向相关用户和经理传达有关分析和调查结果的问题。

答案 6 :(得分:4)

矩阵代数是我的首选

答案 7 :(得分:4)

  • 协作能力。

几乎在任何学科中,伟大的科学很少是由个人完成的。

答案 8 :(得分:3)

有几个计算机科学主题对数据科学家很有用,其中许多已被提及:分布式计算,操作系统和数据库。

Analysis of algorithms,即了解计算的时间和空间要求,是数据科学家最重要的计算机科学专题。它对于实现从统计学习方法到数据收集的高效代码非常有用;并确定您的计算需求,例如多少RAM或多少Hadoop节点。

答案 9 :(得分:2)

耐心 - 既以合理的方式获得结果,又能够回归并根据“实际”要求进行更改。

答案 10 :(得分:0)

在MIT Open course ware 18.06上学习线性代数,并用“线性代数简介”一书替代你的学习。除上述技能外,线性代数还是数据分析中必不可少的技能之一。