為什么數(shù)據(jù)科學(xué)家們選擇了Python語(yǔ)言

為什么數(shù)據(jù)科學(xué)家們選擇了Python語(yǔ)言

Python是一種解釋型呜投、動(dòng)態(tài)語(yǔ)言饶号,具有明確而高效的語(yǔ)法纯趋。Python具有良好的REPL(Read-Eval-Print Loop俏蛮,‘讀取-求值-輸出’循環(huán))桐猬,還可以通過(guò)dir()和文檔字符串從REPL中開(kāi)發(fā)新模塊麦撵。這是程序員更偏向于Python而不是C、C++或Java的 一個(gè)原溃肪。

Python社區(qū)于90年代中期投入精力開(kāi)發(fā)了Numeric免胃,它是“Python的一個(gè)擴(kuò)展,以使其像Matlab那樣自然地支持?jǐn)?shù)值分析” 惫撰。Numeric后來(lái)演變成為NumPy羔沙。幾年后,Matlab的繪圖功能通過(guò)matplotlib庫(kù)被移植到Python中厨钻《蟪科學(xué)計(jì) 算的庫(kù)圍繞NumPy和matplotlib建立,并打包成SciPy包夯膀。Python在類(lèi) Matlab的數(shù)組操作和繪圖功能上的支持诗充,是它比Perl和Ruby更受到青睞的主要原因。

除了前面提到的把 Matlab的特性移植到Python的工作外诱建,近期的工作已經(jīng)把一些R和Mathematica中流行的特性移植到了Python蝴蜓。

R語(yǔ)言中的數(shù)據(jù)框和相關(guān)操作(來(lái)自plyr和reshape包)已經(jīng)由pandas庫(kù)實(shí)現(xiàn)。scikit-learn項(xiàng)目呈現(xiàn)了許多機(jī)器學(xué)習(xí)算法的通用接口,類(lèi)似于R中的caret包茎匠。

Mathematica/Sage中“notebook”的概念已經(jīng)由IPython notebooks實(shí)現(xiàn)格仲。

更詳細(xì)的內(nèi)容可以參考:python.jobbole.com/81039/

為什么數(shù)據(jù)科學(xué)家們選擇了Python語(yǔ)言?

http://www.quora.com/Why-is-Python-a-language-of-choice-for-data-scientists

Python是一種解釋型汽抚、動(dòng)態(tài)語(yǔ)言抓狭,具有明確而高效的語(yǔ)法。Python具有良好的REPL(Read-Eval-Print Loop 造烁,‘讀取-求值-輸出’循環(huán))否过,還可以通過(guò)dir()和文檔字符串從REPL中開(kāi)發(fā)新模塊。這是程序員更偏向于Python而不是C惭蟋、C++或Java的一個(gè)原因苗桂。

Python社區(qū)于90年代中期投入精力開(kāi)發(fā)了Numeric,它是“Python的一個(gè)擴(kuò)展告组,以使其像Matlab那樣自然地支持?jǐn)?shù)值分析”[1]煤伟。Numeric后來(lái)演變成為NumPy[2]。幾年后木缝,Matlab的繪圖功能通過(guò)matplotlib庫(kù)被移植到Python中[3]便锨。科學(xué)計(jì)算的庫(kù)圍繞NumPy和matplotlib建立我碟,并打包成SciPy包[4]放案,這在商業(yè)上由Enthought支持[5]。Python在類(lèi)Matlab的數(shù)組操作和繪圖功能上的支持矫俺,是它比Perl和Ruby更受到青睞的主要原因吱殉。

如今,對(duì)數(shù)據(jù)科學(xué)家來(lái)說(shuō)厘托,Python最流行的替代品是R友雳、Matlab/Octave和Mathematica/Sage。除了前面提到的把Matlab的特性移植到Python的工作外铅匹,近期的工作已經(jīng)把一些R和Mathematica中流行的特性移植到了Python押赊。

R語(yǔ)言中的數(shù)據(jù)框和相關(guān)操作(來(lái)自plyr和reshape包)已經(jīng)由pandas庫(kù)實(shí)現(xiàn)[6]。scikit-learn項(xiàng)目[7]呈現(xiàn)了許多機(jī)器學(xué)習(xí)算法的通用接口包斑,類(lèi)似于R中的caret包考杉。

Mathematica/Sage中“notebook”的概念已經(jīng)由IPython notebooks實(shí)現(xiàn)[8]忆谓。

以我個(gè)人的觀(guān)點(diǎn)膏燕,Python仍然在一些重要領(lǐng)域有所欠缺果录。

1. 首先是Python在數(shù)組操作和公式設(shè)定上的語(yǔ)法相對(duì)更加繁瑣。Matlab/Octave在數(shù)組操作上的語(yǔ)法仍更受青睞(例如丸卷,這是它被斯坦福大學(xué)機(jī)器學(xué)習(xí)課程所采用的原因),而R語(yǔ)言在公式設(shè)定上的語(yǔ)法相當(dāng)不錯(cuò)询刹。

2. 再者就是靜態(tài)圖形庫(kù)ggplot2與交互式圖形庫(kù)D3的對(duì)應(yīng)Python庫(kù)谜嫉。matplotlib庫(kù)既不易安裝萎坷,又難以使用,還不容易建立用于web的交互式圖形沐兰。

3. 第三就是NumPy和pandas庫(kù)在處理大數(shù)據(jù)集時(shí)的可擴(kuò)展性哆档。Continuum公司正致力于解決這個(gè)問(wèn)題,但距離創(chuàng)造出一些連貫又可用的東西還有很長(zhǎng)的路要走住闯。

4. 第四是缺乏一個(gè)類(lèi)似于LINQ項(xiàng)目的瓜浸、用于數(shù)據(jù)操作的嵌入式、聲明式語(yǔ)言比原。Pandas作為一個(gè)低層次的數(shù)據(jù)操作工具箱來(lái)說(shuō)很有用插佛,但是跟蹤復(fù)雜操作的專(zhuān)用Pandas語(yǔ)法會(huì)令人沮喪。

5. 最后是對(duì)數(shù)據(jù)科學(xué)家來(lái)說(shuō)缺乏一個(gè)像R Studio一樣高品質(zhì)的IDE量窘。

參考資料:

[1]http://hugunin.net/story_of_jyth…

[2]http://numpy.scipy.org/

[3]http://matplotlib.sourceforge.net/

[4]http://www.scipy.org/

[5]http://www.enthought.com/

[6]http://pandas.pydata.org

[7]http://scikit-learn.org

[8]http://blog.fperez.org/2012/01/i…

[9]http://continuum.io/

寫(xiě)于2012年8月29日雇寇。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市蚌铜,隨后出現(xiàn)的幾起案子锨侯,更是在濱河造成了極大的恐慌,老刑警劉巖冬殃,帶你破解...
    沈念sama閱讀 221,820評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件囚痴,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡造壮,警方通過(guò)查閱死者的電腦和手機(jī)渡讼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)耳璧,“玉大人成箫,你說(shuō)我怎么就攤上這事≈伎荩” “怎么了蹬昌?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,324評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀(guān)的道長(zhǎng)攀隔。 經(jīng)常有香客問(wèn)我皂贩,道長(zhǎng),這世上最難降的妖魔是什么昆汹? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,714評(píng)論 1 297
  • 正文 為了忘掉前任明刷,我火速辦了婚禮,結(jié)果婚禮上满粗,老公的妹妹穿的比我還像新娘辈末。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,724評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布挤聘。 她就那樣靜靜地躺著轰枝,像睡著了一般。 火紅的嫁衣襯著肌膚如雪组去。 梳的紋絲不亂的頭發(fā)上鞍陨,一...
    開(kāi)封第一講書(shū)人閱讀 52,328評(píng)論 1 310
  • 那天,我揣著相機(jī)與錄音从隆,去河邊找鬼诚撵。 笑死,一個(gè)胖子當(dāng)著我的面吹牛广料,可吹牛的內(nèi)容都是我干的砾脑。 我是一名探鬼主播,決...
    沈念sama閱讀 40,897評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼艾杏,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼韧衣!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起购桑,我...
    開(kāi)封第一講書(shū)人閱讀 39,804評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤畅铭,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后勃蜘,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體硕噩,經(jīng)...
    沈念sama閱讀 46,345評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,431評(píng)論 3 340
  • 正文 我和宋清朗相戀三年缭贡,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了炉擅。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,561評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡阳惹,死狀恐怖谍失,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情莹汤,我是刑警寧澤快鱼,帶...
    沈念sama閱讀 36,238評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站纲岭,受9級(jí)特大地震影響抹竹,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜止潮,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,928評(píng)論 3 334
  • 文/蒙蒙 一窃判、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧喇闸,春花似錦袄琳、人聲如沸窿凤。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,417評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至橘沥,卻和暖如春窗轩,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背座咆。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,528評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工痢艺, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人介陶。 一個(gè)月前我還...
    沈念sama閱讀 48,983評(píng)論 3 376
  • 正文 我出身青樓堤舒,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親哺呜。 傳聞我的和親對(duì)象是個(gè)殘疾皇子舌缤,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,573評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容