R vs Python-哪個更好?

R vs Python-哪個更好?

> Let the games begin!

R vs Python-哪個最好?

如果您正在閱讀本文,我想您會像其他許多數據科學家一樣,想知道要學習哪種編程語言。

無論您是否有其他編碼工具的經驗,這兩個特定程序的個別功能(包括大量的庫和程序包)一開始似乎令人生畏,但請不用擔心,本文將幫助您確定哪個具有 正確的工具,助您一臂之力。

毫不奇怪,R和Python都在眾多應用程序中擁有各自的優勢,並在其全球社區的專業人員中得到了廣泛使用。

首先,最好重新考慮您要使用該編程語言的確切內容。 例如,主要從事遺傳學研究的數據科學家可能會發現自己使用了R(因為它在生物信息學家中很流行),而從事圖像分析模型研究的人(例如特斯拉創建自動駕駛汽車技術的員工)可能會發現自己正在使用R。 Python,由於其複雜的圖像處理工具。

最終,這仍然是您的選擇,雖然盲目地做其他人正在做的事情通常永遠不是一個好主意,但請花些時間去發現為什麼這些專業人員偏愛某些語言。 能夠與未來的同齡人說相同的語言至關重要。

R vs Python-哪個更好?

> Make sure you can speak the language of your colleagues and future employers!

誰使用R及其目的是什麼?

R最初是作為用於統計計算的平臺而創建的,它承載了所有經典測試,時間序列分析,聚類等。 它有一個龐大的數據挖掘者社區,這意味著R開發人員和用戶都可以使用許多可訪問的軟件包。 在圖形方面,有許多用於繪製和分析圖形的包和層,例如ggplot2。

重要的是,R已經出現在新型AI場景中,為神經網絡,機器學習和貝葉斯推理提供了工具。 它還與MXNet和TensorFlow等用於深度學習的軟件包兼容。 如果這聽起來不像您的行話(或者您對這些外來詞感到好奇),則可以在此處閱讀有關這些詞的更多信息。

似乎R不僅有數據科學家而且有大量統計學家以及需要數據處理的相關領域人員(例如醫學,金融和社會科學領域的人員),擁有大量的追隨者。 對於任何數據科學家來說,找到一個被廣泛使用的程序都是很重要的。 您將希望能夠使用一種語言與儘可能多的學科進行交流,以使您的工作輕鬆進行翻譯。

誰在使用Python及其目的是什麼?

在法院的另一端,Python是全面面向程序員和開發人員的出色工具。 無論是開發用於模擬生物分子的算法,還是提供反垃圾郵件軟件,您都可以使用其界面和功能陣列置身其中。

它於1989年發佈,被認為是最重要的通用面向對象編程語言之一(聽起來很花哨)。 Python在新的程序員(其中包括數據科學家)中越來越受歡迎,這當然意味著您將不可避免地遇到那些煩人的問題,這是由豐富的用戶社區和值得信賴的疑難解答程序組成的。

同樣,在AI的熱門話題上,Python也是最受歡迎的選擇。 它具有用於機器學習,神經網絡和Tensorflow的工具。 此外,它涵蓋了一些更一般的用途,其用戶可以從諸如numpy進行統計分析,為數據準備提供熊貓以及通過Seaborn生成圖表等庫中受益。 有關更多信息,請查看數據科學的前20個Python庫中的本文。

R vs Python-哪個更好?

> Artificial Intelligence is coming!

R vs Python:侷限性

更有趣的是:它們如何匹配?

儘早發現侷限性可能是您可以獲得的最重要的建議之一。 從經驗上來講,從使用大量在線支持的Matlab(通常是一些非常出色的人,他們根據您的需求編寫了確切的代碼),跳到幾乎沒有在線存在的labVIEW,我對這種感覺非常瞭解 驚慌失措,無法解決該錯誤。

如果沒有考慮到新語言可能存在的明顯潛在限制,您肯定會感到沮喪。

數據科學應用程序要考慮的一些主要事項是:

· 處理速度-您會使用大量數據嗎?

· 在線社區-這確實是無價之寶,已經救了我很多遍。

· 陡峭的學習曲線-您需要花多少時間和耐心來專門/已經學習過編程,並且有能力更好地學習新語言?

· 友好的用戶界面-您是否熟悉編程,還是更喜歡直觀易用的外觀?

· 廣泛使用-您是否考慮過跨領域及其語言的未來聯繫?

讓我們看一下這些主題的票價如何……

處理速度:

R被認為是緩慢的。 它要求將其對象存儲在物理內存中,這意味著在嘗試利用大數據時不是一個很好的選擇。 話雖這麼說,更快的處理器正在減少這一限制,並且有各種各樣的軟件包致力於解決這個問題。 但是,Python更適合大型數據集,並且它能夠更快地加載大型文件。

有關更多信息,請查看Quora的"哪個更適合數據分析:R還是Python?"。

在線社區:

如上所述,R和Python都擁有廣泛支持的支持網絡,您可以與之聯繫,這對於您似乎無法輕鬆解決的bug而言是寶貴的幫助來源。

陡峭的學習曲線:

可能會或可能不會將其視為R的限制,但其陡峭的學習曲線是由於其對統計學家的廣泛影響。 R是由該領域的專家開發的,R是一個了不起的工具,但是您要花時間為最初的時間付出代價。

另一方面,Python的易用性和相對可訪問性對新程序員來說非常有吸引力。

這兩個程序都將要求您熟悉術語,這些術語一開始似乎有點不合時宜(例如"程序包"和"庫"之間的區別),而Python的設置在R方面具有優勢 用戶友好的體驗。

雖然,Python將對用戶嚴格遵守語法,並且如果您沒有滿足容易錯過的準則,則拒絕運行(儘管從長遠來看,這些準則確實可以增強用戶體驗,因為它使我們變得更好,更整潔了代碼編寫者)。

R vs Python-哪個更好?

> It's annoying initially…but Python will make you a better (if not, neater) coder.

對於許多學術用戶而言,R具有可愛的屬性,即為用戶提供對其圖形設計的更多控制權,從而允許各種顯示輸出和格式。

重要的是,兩者都是基於解釋器的,並且已經發現,與其他語言(例如C ++)相比,這使發現錯誤變得更加容易。

友好的用戶界面:

RStudio被廣泛認為是R中最常用的接口平臺,一旦開始熟悉RStudio,您就會明白為什麼會這樣。

它被歸類為集成開發環境(IDE),幷包括一個直接執行代碼的控制檯,以及用於繪圖,支持交互式圖形,調試和工作區管理的所有功能,有關詳細指南,請參見RStudio IDE功能。

Python擁有眾多的IDE供您選擇。 這樣做的好處是,它為您提供了一個很好的機會,使您可以根據自己的背景選擇一個熟悉的方式。 例如,出於計算機科學的背景,Spyder無疑是最受歡迎的。 鑑於該領域的初學者發現PyCharm易於使用且直觀。

數據科學的前5個Python IDE是關於此主題的有用且全面的文章。

廣泛使用:

我們已經談到了這個主題,我想強調一下,這取決於您選擇的領域。 如果您傾向於學術界,金融和醫療保健領域(僅舉幾例),則R的使用範圍可能會更廣泛,並且您想利用它。

而那些對軟件開發,自動化或機器人技術感興趣的人可能會發現自己沉浸在Python社區中。

R vs Python:優勢

讓我們直接說吧…

R:

· 如果您要操作數據,則是絕佳的選擇。 它擁有超過10,000個用於在其CRAN(綜合R存檔網絡)上進行數據整理的軟件包。

· 您可以輕鬆製作精美的,具有出版物質量的圖形; R允許用戶更改圖形的美感並以最少的編碼進行自定義,這是其競爭對手的巨大優勢。

· 也許其最強大的工具是其統計建模,為數據科學家創建統計工具以及成為該領域的先驅,而這是經驗豐富的程序員的首選。

· 用戶可以從其與Github大型平臺的界面中受益,以發現和共享更好的軟件。

R vs Python-哪個更好?

> R's wonderful data visualisation package: GGPLOT2 will be your new best friend.

Python:

· 對於初學者來說,學習起來非常容易和直觀(與R不同,Python是由程序員開發的,它的易用性使其成為了各個大學的最愛。)

· 它吸引了廣泛的用戶,在越來越多的學科中創建了一個不斷增長的社區,並在開源語言之間增加了交流。

· 嚴格的語法將迫使您成為更好的編碼器,編寫更簡潔,清晰的代碼。

· Python處理大型數據集的速度更快,並且可以輕鬆加載文件,使其更適合大數據處理程序。

結論…

考慮到所有這些,選擇一種語言作為開始很大程度上取決於您要從中獲得什麼。 如果您是專門從事統計分析的數據科學家,或者您從事研究工作,則可能會發現R最適合您。

但是,如果您發現自己跨多個學科分支,則可以利用Python的通用性和多樣化的網絡。

您可能還同意,最終了解兩者(至少足以閱讀對方的語法)將對您有所幫助,因為您瞭解各自的長處。 無疑,這將為您找到更多的著陸工作機會,更重要的是,這使您可以清晰地決定要採取的職業道路。

但是,不要被淹沒; 學習第二語言將比第一語言容易! 毫無疑問,當您成長為數據科學家時,您也會為建立一個全新的社區以沉浸於自己而感到興奮。

祝您好運,編碼愉快!

附言 請原諒草圖-他們看起來非常可愛。

(本文翻譯自Harriet Boyd的文章《R vs Python — Which is best?》,參考:


https://medium.com/swlh/r-vs-python-which-is-best-f948cbc89a4c)


分享到:


相關文章: