python还是r_Python和R到底该学哪个呢
轉載:
簡單回答題主的問題,如果編程零基礎,建議以python入門,但是并不建議以此作為數據分析的全部。R可以說是必須要學的,除此兩者以外的,可以泛泛的關注。
=================================分割線=================================
下面詳細說一下自己的看法,僅僅是個人體會,僅供題主參考。
首先要說的是R,絕對是目前國外學術界的主流,統計系基本除R以外沒有其他了,計量作為和統計相關的方向,R也在逐漸滲透。所以推薦題主學習。
順便說一句,R的學習曲線是比較陡峭的,所以我不太建議零基礎的人從R開始,否則挫折感會比較強烈。而python會略好,所以我建議從python開始。
python并非是專用于統計或者計量的軟件,而是一種非常流行的通用編程語言。經過多年發展,庫也非常齊備。我試用過numpy,scipy和pandas等庫,與其他通用編程語言相比,算是相當好用,不過個人感覺還是比不上R,比如畫圖,ggplot2真心是神一般的存在,python的庫還是略遜一籌。
但是,如樓上各位所說,除了數據處理之外,python可以干的事情太多了,也太牛了。我們主要要用到的,比如網頁采集數據,需要正則表達式,解析網頁等等。這些方面python就比R有優勢多了。
當然,從趨勢來看,未來似乎python比R更優。R是一群統計學家在編程序,python是一群計算機專家在爭取搞數據處理。似乎python的基礎更扎實。個人觀點,僅供參考。
stata我認為是除了R以外最好的計量軟件了,我兩者均用過數年數個項目,但是依然感覺R更好用,整理和處理數據更方便。所以即使在樓上諸位所提到的微觀計量領域,我依然更喜歡R。
除此以外spss,或者eviews等,感覺管理類學生用的更多,功能比較受限,不太推薦。這里不贅述。
上述的幾個軟件,還有個問題,在于都是收費的,考慮到未來知識產權的保護,還是用免費的略靠譜。
R的主要缺點有兩個:
1,面對大數據乏力。這方面sas確實有優勢,但是不得不說,sas的語法太反人類了,完全接受不能。面對這個問題,我要說的是,你得看問題有多大。以我的經驗,經濟里面的數據量似乎還不足以超過R的處理上限很多。可能金融的高頻數據會比較大,我個人沒啥經驗,如果遇到再補充。我嘗試過10g的數據,最簡單的辦法,不是學sas,而是買16g的內存。:)以現在的內存價格,我覺得32g以下的問題不大。
2,性能不足。這方面python也有同樣的問題,最好的解決方案是混合c/c++,不過這個就是無底洞了,耗時極多,都不見得能學好。建議的方法,還是買硬件,這個最簡單。:)當然用并行包等,也是解決方法之一,我嘗試過幾次用機房的多臺機器做集群,不是太成功。求高人指點。
上面諸位還提到過幾個軟件,我也略微說一下自己知道的一些軟件的看法:
matlab:好東西,關鍵還是性能問題,同樣可以靠c/c++來解決。但是我不喜歡比較大的軟件,為了求個均值方差,等它啟動就占了5分鐘。。。
julia:好東西X2,目前關注中,可能還比較年輕,導致配套的庫略少,不過看好未來發展,主要是吸取了matlab,python和c/c++的有點,寫的快,運算的也快,未來看漲,緊密關注。
最后提一下函數式編程,是個好東西,但是不看好純粹函數式編程的未來。它體現了一種頗先進的編程思想,但是在實際工作中,往往性能方面的問題較大。要解決這個問題,還是的混合函數式編程和其他方式,但這就是python,R等軟件已經實現的方式,似乎又沒有必要專門去學其他的函數式編程了。
總結
以上是生活随笔為你收集整理的python还是r_Python和R到底该学哪个呢的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python显示行数_在idle中如何显
- 下一篇: matlab plot3d_号称轻量级M