【问题标题】:Scala IDE for data science applications (like RStudio / Spyder / Rodeo)用于数据科学应用程序的 Scala IDE(如 RStudio / Spyder / Rodeo)
【发布时间】:2016-12-06 11:47:58
【问题描述】:

随着 Spark 的兴起,Scala 作为数据科学应用程序的首选编程语言获得了巨大的发展势头。

为了提高处理数据科学应用程序的效率,我们为

发布了专门的 IDE

Scala 有类似的东西吗?

【问题讨论】:

标签: scala ide data-science


【解决方案1】:

不幸的是,目前似乎没有任何专用于 Scala 的数据科学 IDE。我认为这些将是您的最佳选择:

IntelliJ Worksheets:

这基本上是一个带有输出窗口的文本编辑器,可以根据需要随时更新。 Eclipse 也有类似的东西,我只是更喜欢 IntelliJ。

优点:

  • 以 IntelliJ 出色的代码完成、错误检查和 sbt/maven 集成为后盾。
  • 您可以在与实际开发系统相同的项目设置中进行原型制作(如果有的话)。

缺点:

  • 我不知道有任何缓存/选择性评估,因此每次您需要答案时都会评估整个工作表,如果您有一些需要很长时间才能完成的操作,您可能不希望这样做。
  • 没有工作区变量窗口或绘图集成。

Jupyter Notebooks

Jupyter Notebook 是 iPython notebook 的泛化版本,现在支持dozens of interpreted languages(一直在添加新内核)。

优点:

  • ScalaSpark Scala 内核相当容易安装,都能够添加 maven/sbt 依赖项和 JAR。
  • 笔记本中的单元可以单独运行(例如,允许您训练一个模型并多次使用它)。
  • 单元格支持 Markdown(使用 LaTeX!),可以自行呈现 (a github example),让您可以将笔记本用作报告/演示。
  • 笔记本由笔记本服务器提供支持,因此您可以轻松地将功能更强大的计算机用作笔记本服务器,然后从其他位置与笔记本进行交互。
  • 某些内核具有自动完成功能。
  • 看起来有一些情节整合 (example),但还没有完全完善。

缺点:

  • 并非所有内核都是完美的,有些内核存在错误或功能有限。
  • 没有工作区变量窗口。
  • 您确实需要注意单元格的排序,否则会导致很多混乱。

对于我所做的大多数数据科学工作,我使用 Jupyter,但它远非完美。为了让 Scala 真正成为一种数据科学语言,它确实需要更多的数据科学库(scikit-learn 在这里遥遥领先)并且它需要一个可靠的绘图库(有一些选项,但我没有看到两者都使用惯用的 Scala 并且能够在没有服务器的情况下运行)。我认为一旦有了这两个元素,它就会变得更受欢迎,希望有人能做出一个不错的 RStudio 式 IDE。

【讨论】:

  • 我想知道 eclipse che 是否会成为获得 scala 支持后的那个 - eclipse.org/che
  • 很有意思,没听说过
【解决方案2】:

你最好的镜头(不像 rstudio,但这是你最好的 scala 镜头)是apache zeppelin

【讨论】:

    【解决方案3】:

    我建议您查看 Scala IDE for Eclipse。但我认为,这真的取决于你个人的选择,你是否愿意编写代码。对于逐个代码测试,我仍然会使用 jupyter notebook

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-26
      • 2011-03-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-10-19
      • 1970-01-01
      相关资源
      最近更新 更多