如果你是數(shù)據(jù)分析領(lǐng)域的新兵,那么你一定很難抉擇:在進(jìn)行數(shù)據(jù)分析時(shí),到底應(yīng)該使用哪個(gè)語(yǔ)言,R 還是 Python?在網(wǎng)絡(luò)上,也經(jīng)常出現(xiàn)諸如“我想學(xué)習(xí)機(jī)器語(yǔ)言,我應(yīng)該用哪個(gè)編程語(yǔ)言”或者“我想快速解決問(wèn)題,我應(yīng)該用 R 還是 Python ”等這類問(wèn)題。兩個(gè)編程語(yǔ)言目前都是數(shù)據(jù)分析社區(qū)的佼佼者,最近傳聞 R 和 Python 將要深度合作,這無(wú)疑會(huì)造福人工智能領(lǐng)域和數(shù)據(jù)科學(xué)領(lǐng)域的廣大從業(yè)者。下面我們就來(lái)一探究竟!
R 和 Python 這兩個(gè)編程語(yǔ)言目前都是數(shù)據(jù)分析社區(qū)的佼佼者,他們的代碼開(kāi)源并且能免費(fèi)使用,但是長(zhǎng)久以來(lái)它們一直為成為數(shù)據(jù)科學(xué)家的首選編程語(yǔ)言而戰(zhàn)斗。Hadley Wickham 是 R 編程語(yǔ)言最重要的開(kāi)發(fā)者之一,而 Wes McKinney 則是 Python 的首席開(kāi)發(fā)人員,他們都認(rèn)為這種斗爭(zhēng)是完全沒(méi)有必要的。實(shí)際上,他們認(rèn)為如果能夠和對(duì)方合作,將會(huì)給彼此數(shù)百萬(wàn)的用戶群體帶來(lái)更大的好處。
上個(gè)月,McKinney 宣布成立 Ursa Labs,這是一個(gè)旨在改進(jìn)數(shù)據(jù)科學(xué)開(kāi)發(fā)工具的創(chuàng)新性組織。McKinney 將會(huì)和 Wickham 的老東家 RStudio 公司合作,他們將在工程中保留最受 R 用戶歡迎的用戶界面。Ursa Labs 的主要目的是讓那些使用不同編程語(yǔ)言的數(shù)據(jù)科學(xué)家能夠無(wú)縫對(duì)接,毫無(wú)障礙地合作,從而避免開(kāi)發(fā)過(guò)程中因?yàn)榫幊陶Z(yǔ)言的不同,造成的一些冗余的工作。除了改進(jìn) R和 Python 編程語(yǔ)言之外,該組織還希望他們的工作可以改善其它開(kāi)源編程語(yǔ)言的用戶體驗(yàn)(例如 Java 和 Julia)。
R 和 Python 是兩個(gè)非常重要的工具,無(wú)論是對(duì)于 Google 和 Facebook 等大型科技平臺(tái)的數(shù)據(jù)家來(lái)說(shuō),還是針對(duì)其它科研人員、學(xué)術(shù)研究者和數(shù)據(jù)記錄人員,都是不可缺少的。但對(duì)于編程人員來(lái)說(shuō),一個(gè)最為普遍的問(wèn)題就是,他們很難跟使用不同編程語(yǔ)言的同事進(jìn)行項(xiàng)目上的合作。
上文提到的 Ursa Labs 就打算嘗試創(chuàng)建可以在所有編程語(yǔ)言上通用的新標(biāo)準(zhǔn),使得那些使用不同編程語(yǔ)言的數(shù)據(jù)科學(xué)家能夠更加輕松地和他人共享數(shù)據(jù)和代碼。Ursa Labs 的開(kāi)發(fā)者說(shuō)這將是對(duì)協(xié)同工作的能力的一次巨大提升,以后再也不用為學(xué)習(xí)哪個(gè)編程語(yǔ)言而爭(zhēng)論不休了。Wickham 和 McKinney 已經(jīng)在合作創(chuàng)建一種可以在 Python 和 R 中使用的通用文件格式。
除了提高了協(xié)同工作的效率之外,Wickham 和 McKinney 還表示,使用不同編程語(yǔ)言的開(kāi)發(fā)者在處理相同的問(wèn)題的時(shí)候,即便他們已經(jīng)完美解決了這個(gè)問(wèn)題,就因?yàn)榫幊陶Z(yǔ)言不同導(dǎo)致他們?nèi)匀缓茈y把自己的發(fā)現(xiàn)告訴其他人,這也成為他們創(chuàng)立這個(gè)項(xiàng)目的另一個(gè)主要?jiǎng)訖C(jī)。
例如,Wickham 解釋說(shuō),在每種語(yǔ)言中,人們都會(huì)用到求平均值這樣一個(gè)函數(shù)。對(duì)于用戶來(lái)說(shuō),實(shí)現(xiàn)這個(gè)太容易了,無(wú)非就是在 R 和 Python 中編寫一句話的事。但是對(duì)于編程語(yǔ)言的開(kāi)發(fā)者來(lái)說(shuō),以最高效的計(jì)算效率實(shí)現(xiàn)這樣一項(xiàng)任務(wù)其實(shí)是一個(gè)很有技術(shù)含量的活。R 和 Python 的開(kāi)發(fā)人員都傾向于使用 C++ 和 C 語(yǔ)言來(lái)解決這個(gè)問(wèn)題,這對(duì)于開(kāi)發(fā)很有幫助,但對(duì)大多數(shù)普通用戶來(lái)說(shuō)卻很棘手,因?yàn)檫@涉及到底層的一些編程問(wèn)題,他們并不熟悉。Wickham 說(shuō),如果一個(gè)語(yǔ)言的開(kāi)發(fā)人員想出了實(shí)現(xiàn)某個(gè)功能的最佳解決方法,這種方法也應(yīng)該能夠被應(yīng)用于其他語(yǔ)言,這才是最理想的狀態(tài)。這就是 Ursa Labs 的主要使命。
Wickham 和 McKinney 補(bǔ)充道,除了解決技術(shù)問(wèn)題之外,這個(gè)項(xiàng)目還在為實(shí)現(xiàn)編程社區(qū)之間的和平而努力服務(wù)著。他們說(shuō),如果使用這些語(yǔ)言一起工作的人們?cè)蕉啵瑪?shù)據(jù)科學(xué)的進(jìn)展就會(huì)越快。 Wickham 說(shuō):“我希望這個(gè)項(xiàng)目能夠結(jié)束 R 和 Python 之間毫無(wú)意義的爭(zhēng)論,這兩種編程語(yǔ)言都非常棒。”
-
python
+關(guān)注
關(guān)注
56文章
4807瀏覽量
85037 -
r語(yǔ)言
+關(guān)注
關(guān)注
1文章
30瀏覽量
6327
原文標(biāo)題:Python和R正強(qiáng)強(qiáng)聯(lián)合,“誰(shuí)更好”的爭(zhēng)論即將終結(jié)?
文章出處:【微信號(hào):AI_Thinker,微信公眾號(hào):人工智能頭條】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論