s*********e 发帖数: 1051 | |
W*****k 发帖数: 158 | 2 library差得还远
【在 s*********e 的大作中提到】 : 大伙儿说说呗。。。
|
D**u 发帖数: 288 | 3 挺不错的,语法很精简,速度也很快,不过,最近我在scala,go,和julia中选择了去
学习scala.
简单说一下我的看法:
scala对于写大型程序的程序员来说,因为其fp的特点,写起来并不是很方便,但是对
于data scientist 来说scala的优势会远大过劣势。
julia 和 scala对于data scientist 主要是跟 python 和 R 竞争。
scala, julia 的一大优势是处理 row based file 时速度接近于 C++ 比起不用 C++
的 R和python要快很多。
scala相对于julia的优势是有java library的支持,虽然现在用scala load进去的
java library有时会有错误,或者根本不报错,但是这个情况在逐渐变好,scala可以
直接生成jar文件只要有java的机子上都可以用。
在Hadoop中,scala,java和python是最popular的,在1.0中python的劣势并没有很明
显,但在Yarn中, scala的Scalding library可以让scala写出的任何algorithm几
乎不需修改的放到hadoop让运行。 当然,现在已经有python的scalding wrapper出来
了。
我的建议是,作为data scientist如果只用A/B testing, anova, 或者简单的model
prototyping,就努力把R朝着极致用。
如果需要automate一些process,或者做一些中小型的production, 就可能需要把
python用熟练。
如果需要做大型的 production(这些大都是让 CS专业的人用java或者c++去做的),
不过如果statistician 或者data scientist会scala的话,从prototype到production
都可以全包了, 熟练起来可以直接让python 沦为 just for scripting
都是愚见,写得匆忙,语气有些绝对,多包涵哈,我的python已经能满足需要了,开始
学scala。 |
o****o 发帖数: 8077 | 4 看起来还是python做prototype,scala直接可以写产品了
【在 D**u 的大作中提到】 : 挺不错的,语法很精简,速度也很快,不过,最近我在scala,go,和julia中选择了去 : 学习scala. : 简单说一下我的看法: : scala对于写大型程序的程序员来说,因为其fp的特点,写起来并不是很方便,但是对 : 于data scientist 来说scala的优势会远大过劣势。 : julia 和 scala对于data scientist 主要是跟 python 和 R 竞争。 : scala, julia 的一大优势是处理 row based file 时速度接近于 C++ 比起不用 C++ : 的 R和python要快很多。 : scala相对于julia的优势是有java library的支持,虽然现在用scala load进去的 : java library有时会有错误,或者根本不报错,但是这个情况在逐渐变好,scala可以
|
s*r 发帖数: 2757 | 5 今天正好有人提到julia了
http://darrenjw.wordpress.com/2013/12/23/scala-as-a-platform-fo
Similarly, although there has been some buzz around another new language
recently, which is faster than R and Python, my feeling is that the last
thing the world needs right now is Just Unother Language for Indexed Arrays
… |
s*********e 发帖数: 1051 | 6 多谢您百忙中的回复。
还有一个小问题。同样是FP,scala相对于clojure的优势又在哪里呢?clojure同样可以
调用Java的库,而且基于clojure的incanter好象还有点意思。
另外,我觉得学新语言还是要有一定预见和前瞻。否则,花进去的时间和精力就白费了,
还不如用来陪女儿呢。
【在 D**u 的大作中提到】 : 挺不错的,语法很精简,速度也很快,不过,最近我在scala,go,和julia中选择了去 : 学习scala. : 简单说一下我的看法: : scala对于写大型程序的程序员来说,因为其fp的特点,写起来并不是很方便,但是对 : 于data scientist 来说scala的优势会远大过劣势。 : julia 和 scala对于data scientist 主要是跟 python 和 R 竞争。 : scala, julia 的一大优势是处理 row based file 时速度接近于 C++ 比起不用 C++ : 的 R和python要快很多。 : scala相对于julia的优势是有java library的支持,虽然现在用scala load进去的 : java library有时会有错误,或者根本不报错,但是这个情况在逐渐变好,scala可以
|
r*****d 发帖数: 346 | 7 赞,学习了!
R, Python, Java/C++ (assuming Java and C++ are the same language) 是根基,根
基一定要稳(纯属个人愚见:))
【在 D**u 的大作中提到】 : 挺不错的,语法很精简,速度也很快,不过,最近我在scala,go,和julia中选择了去 : 学习scala. : 简单说一下我的看法: : scala对于写大型程序的程序员来说,因为其fp的特点,写起来并不是很方便,但是对 : 于data scientist 来说scala的优势会远大过劣势。 : julia 和 scala对于data scientist 主要是跟 python 和 R 竞争。 : scala, julia 的一大优势是处理 row based file 时速度接近于 C++ 比起不用 C++ : 的 R和python要快很多。 : scala相对于julia的优势是有java library的支持,虽然现在用scala load进去的 : java library有时会有错误,或者根本不报错,但是这个情况在逐渐变好,scala可以
|
m****i 发帖数: 41 | 8 受教了,本来也在觉得julia的library可能跟不上 |
D**u 发帖数: 288 | 9 多谢,这个blog非常有帮助。还有这个是scala不是julia
文中提到的breeze(stat package) 和 saddle (data manipulation package)对于R和
python user非常intuitive:
check these two quick-start page out:
https://github.com/scalanlp/breeze/wiki/Quickstart
http://saddle.github.io/doc/quickstart.html#intro
Arrays
【在 s*r 的大作中提到】 : 今天正好有人提到julia了 : http://darrenjw.wordpress.com/2013/12/23/scala-as-a-platform-fo : Similarly, although there has been some buzz around another new language : recently, which is faster than R and Python, my feeling is that the last : thing the world needs right now is Just Unother Language for Indexed Arrays : …
|
D**u 发帖数: 288 | 10 班门弄斧了。
clojure vs scala 直观来说我觉得clojure更像是 “javalized” LISP,scala则 是
“javalized + functionalized” Python;clojure是纯FP,scala是OO+FP。
在我眼里scala就像是python一样,可以有很多种方法解决一个问题,语法什么的不用
太讲究
,code可能写得很冗长,不过总能解决问题;clojure像是LISP(我没研究过只是接触了
一下)语法更精简,更有逻辑,也更抽象,可读性差,而且因为不是oop,扩展和重复利
用性不如scala
incanter 已经inactive 3年了,不过最近好像又有了点动静,类似的interactive 的
enviroment scala也有叫scalalab,这些东西目前只是可以用来帮助熟悉语言和data
structure,也可以不时画出几个plot来玩玩,但是可能要把eco建起来还有很多路要走。
最后说eco,我觉得写LISP的人可能真的都是些逻辑更好的,可是终究现在大多数人是C
++,JAVA,python一系列过来的,所以像breeze,saddle,spark这些重量级的library
还是在scala中出现,以后应该也发展的更快
PS:学语言真是花时间,我也只能做到浅尝辄止,只是希望如果以后有一天不管是需要
作production或者hadoop可以在真正的project中更快的上手,也不敢期望太多了
【在 s*********e 的大作中提到】 : 多谢您百忙中的回复。 : 还有一个小问题。同样是FP,scala相对于clojure的优势又在哪里呢?clojure同样可以 : 调用Java的库,而且基于clojure的incanter好象还有点意思。 : 另外,我觉得学新语言还是要有一定预见和前瞻。否则,花进去的时间和精力就白费了, : 还不如用来陪女儿呢。
|
|
|
s*r 发帖数: 2757 | 11 you did not recognize "Just Unother Language for Indexed Arrays"
【在 D**u 的大作中提到】 : 多谢,这个blog非常有帮助。还有这个是scala不是julia : 文中提到的breeze(stat package) 和 saddle (data manipulation package)对于R和 : python user非常intuitive: : check these two quick-start page out: : https://github.com/scalanlp/breeze/wiki/Quickstart : http://saddle.github.io/doc/quickstart.html#intro : : Arrays
|
D**u 发帖数: 288 | 12 ah, I see your point now.
【在 s*r 的大作中提到】 : you did not recognize "Just Unother Language for Indexed Arrays"
|
o****o 发帖数: 8077 | 13 年纪大了学新语言精力和动力都不足,边际收益稍低。
【在 s*********e 的大作中提到】 : 多谢您百忙中的回复。 : 还有一个小问题。同样是FP,scala相对于clojure的优势又在哪里呢?clojure同样可以 : 调用Java的库,而且基于clojure的incanter好象还有点意思。 : 另外,我觉得学新语言还是要有一定预见和前瞻。否则,花进去的时间和精力就白费了, : 还不如用来陪女儿呢。
|
s*********e 发帖数: 1051 | 14 学新语言还挺有意思的,但要有针对性,不要浪费时间。
另外,如果julia真的象benchmark里那么快的话,我倒是不担心library。迟早会有的。
【在 o****o 的大作中提到】 : 年纪大了学新语言精力和动力都不足,边际收益稍低。
|
s*r 发帖数: 2757 | 15 写spec吧...
前一阵弄matlab,结果跟R的语法混得一塌糊涂,(和[分不清。
【在 o****o 的大作中提到】 : 年纪大了学新语言精力和动力都不足,边际收益稍低。
|
o****o 发帖数: 8077 | 16 现在学新的语言主要是兴趣和以后自己搞东西的需要,但是精力有限啊
我个人还是倾向于把python这种script语言学精了就好,自己做prototype,有朋友写
production,所以对性能要求不高,关键要库多,prototype快,跟别的系统借口多且
方便。
合作才是王道啊
的。
【在 s*********e 的大作中提到】 : 学新语言还挺有意思的,但要有针对性,不要浪费时间。 : 另外,如果julia真的象benchmark里那么快的话,我倒是不担心library。迟早会有的。
|
D******n 发帖数: 2836 | 17 其实R也可以作为script,挺方便的。
【在 o****o 的大作中提到】 : 现在学新的语言主要是兴趣和以后自己搞东西的需要,但是精力有限啊 : 我个人还是倾向于把python这种script语言学精了就好,自己做prototype,有朋友写 : production,所以对性能要求不高,关键要库多,prototype快,跟别的系统借口多且 : 方便。 : 合作才是王道啊 : : 的。
|
s*********e 发帖数: 1051 | 18 你是计算大拿,比99.99%的人要强。;-)
【在 D******n 的大作中提到】 : 其实R也可以作为script,挺方便的。
|
n*****3 发帖数: 1584 | 19 难到没人绝的 scala 比 c++ 还复杂 吗?我当年调c+ 都没看scala
则阳 头皮发嘛 当然现在 老了 不比 你们年轻人
julia 看其来和 scala 一路货色
有不based on JVM
如果没大工司花钱花人, 我看基本的 库都 have a long way to go
【在 D**u 的大作中提到】 : 班门弄斧了。 : clojure vs scala 直观来说我觉得clojure更像是 “javalized” LISP,scala则 是 : “javalized + functionalized” Python;clojure是纯FP,scala是OO+FP。 : 在我眼里scala就像是python一样,可以有很多种方法解决一个问题,语法什么的不用 : 太讲究 : ,code可能写得很冗长,不过总能解决问题;clojure像是LISP(我没研究过只是接触了 : 一下)语法更精简,更有逻辑,也更抽象,可读性差,而且因为不是oop,扩展和重复利 : 用性不如scala : incanter 已经inactive 3年了,不过最近好像又有了点动静,类似的interactive 的 : enviroment scala也有叫scalalab,这些东西目前只是可以用来帮助熟悉语言和data
|
a*****n 发帖数: 230 | 20 While I understand the allure of a new programming language, my advice is to
stay with the mature and proven R. Many things you take for granted in R (
for example, missing data) will have to be reinvested by yourself. If you
are primarily a statistician, wait till Julia to grow. Meanwhile, the speed
of R will also slowly but surely improve. |
s******0 发帖数: 1269 | |