开心六月综合激情婷婷|欧美精品成人动漫二区|国产中文字幕综合色|亚洲人在线成视频

    1. 
      
        <b id="zqfy3"><legend id="zqfy3"><fieldset id="zqfy3"></fieldset></legend></b>
          <ul id="zqfy3"></ul>
          <blockquote id="zqfy3"><strong id="zqfy3"><dfn id="zqfy3"></dfn></strong></blockquote>
          <blockquote id="zqfy3"><legend id="zqfy3"></legend></blockquote>
          打開APP
          userphoto
          未登錄

          開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

          開通VIP
          R You Ready?——大數(shù)據(jù)時(shí)代下優(yōu)雅、卓越的統(tǒng)計(jì)分析及繪圖環(huán)境 | 統(tǒng)計(jì)之都
          作者按:本文根據(jù)去年11月份CSDN舉辦的“大數(shù)據(jù)技術(shù)大會(huì)”演講材料整理,最初發(fā)表于2012年2月期《程序員》雜志。
          1. 歷史
          R(R Development Core Team, 2011)語言由新西蘭奧克蘭大學(xué)的 Ross Ihaka 和 Robert Gentleman 兩人共同發(fā)明,其詞法和語法分別源自 Scheme 和 S 語言,R 語言一般認(rèn)為是 S 語言(John Chambers, Bell Labs, 1972)的一種方言。R 是“GNU S”, 一個(gè)自由的、有效的、用于統(tǒng)計(jì)計(jì)算和繪圖的語言和環(huán)境,它提供了廣泛的統(tǒng)計(jì)分析和繪圖技術(shù):包括線性和非線性模型、統(tǒng)計(jì)檢驗(yàn)、時(shí)間序列、分類、聚類等方法。我們更傾向于認(rèn)為 R 是一個(gè)環(huán)境,在 R 環(huán)境里實(shí)現(xiàn)了很多經(jīng)典的、現(xiàn)代的統(tǒng)計(jì)技術(shù)。
          圖1: 1992 年,Ross Ihaka 和Robert Gentleman 在奧克蘭大學(xué)成為同事。后來為了方便教授初等統(tǒng)計(jì)課程,二人開發(fā)了一種語言;而他們名字的首字母都是R,于是R 便成為了這門語言的名稱。
          作為 R 語言的前身——S 語言的代碼幾乎不需要進(jìn)行任何修改即可在R 語言環(huán)境下運(yùn)行,從這個(gè)角度講兩種語言幾乎等價(jià)。S 語言誕生于上個(gè)世紀(jì) 70 年代的由 John M. Chambers 領(lǐng)導(dǎo)的貝爾實(shí)驗(yàn)室統(tǒng)計(jì)部,它的誕生過程幾乎就是現(xiàn)代統(tǒng)計(jì)分析方式的演化歷程的寫照(謝益輝,鄭冰, 2008):
          1975-1976 年,貝爾實(shí)驗(yàn)室統(tǒng)計(jì)研究部使用一套文檔齊全的 Fortran 庫做統(tǒng)計(jì)研究,簡(jiǎn)稱為 SCS ( Statistical Computing Subroutines );
          當(dāng)時(shí)的商業(yè)統(tǒng)計(jì)軟件采用的是批處理的方式,一次性輸出問題的所有相關(guān)的信息,在那個(gè)時(shí)代,這個(gè)過程需要幾個(gè)小時(shí),并且商業(yè)軟件不能對(duì)程序做任何修改。而貝爾實(shí)驗(yàn)室的統(tǒng)計(jì)學(xué)家們需要靈活的交互式數(shù)據(jù)分析方式,因此 SCS 在貝爾實(shí)驗(yàn)室非常受歡迎;
          但統(tǒng)計(jì)學(xué)家們發(fā)現(xiàn)使用 SCS 做統(tǒng)計(jì)分析時(shí)需要大量的 Fortran 編程,花在編程上的時(shí)間同取得的分析效果相比有些得不償失。慢慢地,大家達(dá)成了一個(gè)共識(shí):統(tǒng)計(jì)分析不應(yīng)該需要編寫 Fortran 程序!
          于是,為了同 SCS 進(jìn)行交互,一套完整的高級(jí)語言系統(tǒng) S 誕生了;
          S 語言的理念,用它的發(fā)明者John Chambers 的話說就是“to turn ideas into software, quickly and faithfully.”
          1993 年,S 語言的許可證被 MathSoft 公司買斷,S-PLUS 成為了其公司的主打數(shù)據(jù)分析產(chǎn)品,這時(shí)候,由于 S-PLUS 繼承了S 語言的優(yōu)秀血統(tǒng),所以廣泛被世界各國的統(tǒng)計(jì)學(xué)家所使用。但好景不長(zhǎng),1997 年 R 語言正式成為了 GNU 項(xiàng)目,大量的優(yōu)秀統(tǒng)計(jì)學(xué)家加入到了 R 語言開發(fā)的行列。隨著 R 語言的功能愈發(fā)強(qiáng)大,漸漸地 S-PLUS 的用戶轉(zhuǎn)到了同承一脈的R 語言。S 語言的發(fā)明人之一,John M. Chambers 最終也成為了 R 語言的核心團(tuán)隊(duì)成員。S-PLUS 這款優(yōu)秀的軟件也幾經(jīng)易手,最后花落 TIBCO 公司,這是后話。
          John Chambers 老爺子一直不遺余力的致力于R 語言的發(fā)展,至今仍然是活躍的 R 語言開發(fā)者。在 2009 年第一期 R Journal 上 John Chambers 是這樣對(duì) R 語言是定義的:
          An interface to computational procedures of many kinds;
          Interactive, hands-on in real time;
          Functional in its model of programming;
          Object-oriented, “everything is an object”;
          Modular, built from standardized pieces; and,
          Collaborative, a world-wide, open-source effort.
          當(dāng)然,R 語言的這些特點(diǎn)很難在一篇短文里細(xì)致的體現(xiàn)出來,那下面我將簡(jiǎn)要的描述一下 R 語言的現(xiàn)狀和未來。
          2. 現(xiàn)狀及應(yīng)用
          R 語言在國際和國內(nèi)的發(fā)展差異非常大,國際上 R 語言已然是專業(yè)數(shù)據(jù)分析領(lǐng)域的標(biāo)準(zhǔn),但在國內(nèi)依舊任重而道遠(yuǎn),這固然有數(shù)據(jù)學(xué)科地位的原因,國人版權(quán)概念薄弱以及學(xué)術(shù)領(lǐng)域相對(duì)閉塞也是原因。那為什么 R 語言能夠被廣大的數(shù)據(jù)分析工作者做接受?這其中原因是很多的:
          2.1 優(yōu)勢(shì)及特點(diǎn)
          從 R 語言的發(fā)展歷史上看,R 主要是統(tǒng)計(jì)學(xué)家為解決數(shù)據(jù)分析領(lǐng)域問題而開發(fā)的語言,因此 R 具有一些獨(dú)特的優(yōu)勢(shì):
          統(tǒng)計(jì)學(xué)家和幾乎覆蓋整個(gè)統(tǒng)計(jì)領(lǐng)域的前沿算法(3700+ 擴(kuò)展包)
          開放的源代碼(free, in both senses),可以部署在任何操作系統(tǒng),比如 Windows, Linux, Mac OS X, BSD, Unix強(qiáng)大的社區(qū)支持
          高質(zhì)量、廣泛的統(tǒng)計(jì)分析、數(shù)據(jù)挖掘平臺(tái)
          重復(fù)性的分析工作(Sweave = R + LATEX),借助 R 語言的強(qiáng)大的分析能力 + LaTeX 完美的排版能力,可以自動(dòng)生成分析報(bào)告
          方便的擴(kuò)展性可通過相應(yīng)接口連接數(shù)據(jù)庫,如 Oracle、DB2、MySQL
          同 Python、Java、C、C++ 等語言進(jìn)行互調(diào)
          提供 API 接口均可以調(diào)用,比如 Google、Twitter、Weibo
          其他統(tǒng)計(jì)軟件大部分均可調(diào)用 R,比如 SAS、SPSS、Statistica等
          甚至一些比較直接的商業(yè)應(yīng)用,比如 Oracle R Enterprise, IBM Netezza, R add-on for Teradata, SAP HANA, Sybase RAP(劉思喆,2012
          2.2 榮譽(yù)
          R 語言擁有這么多優(yōu)勢(shì),很大部分原因是由于它同樣繼承了 S 語言的優(yōu)秀血統(tǒng)。S 語言在1998 年被美國計(jì)算機(jī)協(xié)會(huì)(ACM)授予了軟件系統(tǒng)獎(jiǎng),這是迄今為止眾多統(tǒng)計(jì)軟件中“唯一”被 ACM 授予的統(tǒng)計(jì)系統(tǒng)。
          當(dāng)時(shí) ACM 是這樣評(píng)價(jià)S 語言的:
          永久的改變了人們分析、可視化、處理數(shù)據(jù)的方式;
          是一個(gè)優(yōu)雅的,被廣泛接受的,不朽的軟件系統(tǒng)。
          我們也可以查詢到歷年 ACM 授予軟件系統(tǒng)獎(jiǎng)的列表,這些優(yōu)秀的軟件系統(tǒng)同我們的生活息息相關(guān):
          1983 Unix
          1986 TeX
          1989 PostScript
          1991 TCP/IP
          1995 World-Wide-Web
          1997 Tcl/Tk
          1998 S
          1999 The Apache Group
          2002 Java
          2009 年紐約時(shí)報(bào)發(fā)表了題為 “Data Analysts Captivated by R’s Power” 的社評(píng),集中的討論了 R 語言在數(shù)據(jù)分析領(lǐng)域的發(fā)展,并引發(fā)了 SAS 和 R 用戶廣泛而激烈的爭(zhēng)論。接下來的 2010 年,美國統(tǒng)計(jì)協(xié)會(huì)(American Statistical Association)又將第一屆“統(tǒng)計(jì)計(jì)算及圖形獎(jiǎng)” 授予了 R 語言,用于表彰其在統(tǒng)計(jì)應(yīng)用和統(tǒng)計(jì)研究廣泛的影響。
          2.3 社團(tuán)及活動(dòng)
          正如前文 John Chambers 所說,R 也是一個(gè)社區(qū),其線下的活動(dòng)也是非?;钴S。在國際上,歐洲和美國每年會(huì)輪值舉辦一次 useR! 會(huì)議,屆時(shí)來自于世界各地的 R 用戶齊聚一堂,討論 R 語言的應(yīng)用與科研方面的成果。出于對(duì)統(tǒng)計(jì)計(jì)算的特殊考慮,每?jī)赡赀€會(huì)舉辦一次 DSC 會(huì)議(Directions in Statistical Computing),專門討論 R 在統(tǒng)計(jì)計(jì)算方面的應(yīng)用及理論研究。各大城市也會(huì)有相應(yīng)的 R Group,方便本地的R 用戶聚會(huì)及交流。
          在國內(nèi),每年會(huì)以統(tǒng)計(jì)之都牽頭在北京和上海舉辦兩次中國 R 語言會(huì)議,至今年已經(jīng)在中國人民大學(xué)、華東師范大學(xué)等高校舉辦了四屆 R 語言會(huì)議,歷年的演講主題涉及醫(yī)藥、金融、地理信息、統(tǒng)計(jì)圖形、數(shù)據(jù)挖掘、制藥、高性能計(jì)算、社會(huì)學(xué)、生物信息學(xué)、互聯(lián)網(wǎng)等多個(gè)領(lǐng)域,從明年起,臺(tái)北將成為第三個(gè)舉辦中國 R 語言會(huì)議的城市,2012 年6月的中華 R 語言會(huì)議臺(tái)北場(chǎng)已經(jīng)在籌劃當(dāng)中。
          2.4 業(yè)界的認(rèn)可
          KDnuggets 網(wǎng)站每年都會(huì)做一些數(shù)據(jù)分析、數(shù)據(jù)挖掘方面的專題問卷調(diào)查,在 2011 年 8月份的數(shù)據(jù)挖掘領(lǐng)域語言流行度的調(diào)查中,R 語言位于數(shù)據(jù)挖掘領(lǐng)域居于所有語言之首(圖2),而緊隨其后的SQL、Python、Java 則是在某一領(lǐng)域具有各自的獨(dú)到優(yōu)勢(shì)。在數(shù)據(jù)挖掘范疇下,R 語言同這些語言相互補(bǔ)足、相得益彰。
          根據(jù)互聯(lián)網(wǎng)搜索結(jié)果計(jì)算的TIOBE 編程社區(qū)指數(shù)(Programming Community Index)(TIOBE, 2011)可能更能代表編程語言的流行度。在 2011 年 12 月份排名中,R 語言依舊是在統(tǒng)計(jì)領(lǐng)域中最為流行的語言,位列第 24(Ratings 0.522%),而時(shí)常被放在一起比較的SAS 則排名第 31(0.417%)。
          圖2: 雖然KDnuggets 網(wǎng)站的調(diào)查存在樣本有偏的嫌疑,但畢竟代表了某一類人群的偏好。并 且排名前五位的語言在各自的領(lǐng)域確有代表性。數(shù)據(jù)來源http://www.kdnuggets.com/2011/08/poll-languages-for-data-mining-analytics.html
          3. 挑戰(zhàn)和未來
          雖然 R 語言有諸多的優(yōu)勢(shì),但 R 語言不是萬能的,它畢竟是統(tǒng)計(jì)編程類語言。受到其算法架構(gòu)的通用性以及速度性能方面的影響,因此其初始設(shè)計(jì)完全基于單線程和純粹的內(nèi)存計(jì)算。雖然一般情況下無關(guān) R 的使用,在當(dāng)今大數(shù)據(jù)條件下,這兩個(gè)設(shè)計(jì)思路的劣勢(shì)逐漸變得愈加刺眼,好在 R 的一些優(yōu)秀的擴(kuò)展性包解決了上述問題,比如:
          snow 支持MPI、PVM、nws、sockets 通訊,解決單線程和內(nèi)存限制;
          multicore 適合大規(guī)模計(jì)算環(huán)境,主要解決單線程問題;
          parallel R 2.14.0 版本增加的標(biāo)準(zhǔn)包,整合了snow 和multicore 功能;
          R + Hadoop 在Hadoop 集群上運(yùn)行R 代碼,亦或操作Hive 倉庫;
          RHIPE 更友好的R 代碼運(yùn)行環(huán)境,解決單線程和內(nèi)存限制;
          Segue 利用Amazon’s Web Services(EC2)。
          這里需要著重提一下 parallel 包,這個(gè)包是 R 核心團(tuán)隊(duì)為了解決大數(shù)據(jù)計(jì)算問題而在標(biāo)準(zhǔn)安裝程序下新增的功能包。
          3.1 一些誤區(qū)
          很多人認(rèn)為 R 語言是 GNU 開源項(xiàng)目軟件,因此軟件的使用是“沒有任何保證” 的。但在美國,R 的計(jì)算結(jié)果被 FDA(Food and Drug Administration)所承認(rèn);并且有報(bào)告指出R 相比其他商業(yè)軟件,bug 數(shù)量非常少(UCLA, 2006)!
          R 開發(fā)的核心團(tuán)隊(duì)對(duì)于 R 的新功能持異常謹(jǐn)慎的態(tài)度,比如cairographics 從2007 開始醞釀,直到上一個(gè)大版本(2011 年)才引入到 R 標(biāo)準(zhǔn)安裝程序;byte-compile 功能更是經(jīng)歷了1999-2011 近12年的孵化(Ripley, 2011)。從這個(gè)角度講,R 語言的代碼質(zhì)量以及運(yùn)算結(jié)果的可信性是完全可以保證的。
          當(dāng)然,這里所說的是 R 的標(biāo)準(zhǔn)安裝程序包,并不代表所有的擴(kuò)展包的質(zhì)量。畢竟3700+的擴(kuò)展包良莠不齊,雖然不乏一些優(yōu)秀的包(如Rcpp, RODBC, VGAM, rattle),但必然存在一些擴(kuò)展包質(zhì)量不佳的情況。
          3.2 應(yīng)用的思考
          R 語言并不是人人都會(huì)接觸到的語言,相對(duì)要小眾很多,有些人即便接觸到?jīng)]準(zhǔn)也搞不清楚 R 到底是做什么用途。對(duì)于走上這條路的人,經(jīng)常會(huì)有一些應(yīng)用困難,比如對(duì)個(gè)人學(xué)習(xí)角度而言:
          雖然 R 語言的設(shè)計(jì)之初就是避免通過大量編程實(shí)現(xiàn)統(tǒng)計(jì)算法,但最基本的編程能力還是需要的,因此對(duì)于一般非計(jì)算機(jī)專業(yè)的工作者來說無疑提高了難度;
          還有很多人提到,R 語言的學(xué)習(xí)曲線非常陡峭。但從個(gè)人這么多年的使用經(jīng)驗(yàn)上看,陡峭的學(xué)習(xí)曲線并不是R 語言本身的,而是隱藏在后面的統(tǒng)計(jì)知識(shí)很難在短時(shí)間內(nèi)掌握的緣故。
          從公司商業(yè)應(yīng)用的角度而言,也存在一些不可回避的問題:
          首先是人力資源成本如何核算;
          軟件成本問題,由于 R 是自由軟件,可以隨時(shí)隨地下載,因此對(duì)于企業(yè)來說如何度量成本是一個(gè)問題;
          R 的技能核定并沒有官方或機(jī)構(gòu)標(biāo)準(zhǔn),簡(jiǎn)歷上“熟練使用R 語言” 可能沒有任何意義;
          實(shí)際上,即便沒有上述兩個(gè)問題,那企業(yè)想找到 R 相關(guān)的人才不那么簡(jiǎn)單;
          對(duì)于大量工作已經(jīng)由其他軟件實(shí)現(xiàn)(比如用SAS)的公司來講,轉(zhuǎn)化成本很高;
          技術(shù)支持獲取的問題。
          4. 結(jié)語
          R 語言雖然誕生于統(tǒng)計(jì)社區(qū),服務(wù)于數(shù)據(jù),但現(xiàn)在隨著數(shù)據(jù)滲透到各行各業(yè),R 語言已經(jīng)遠(yuǎn)遠(yuǎn)超過統(tǒng)計(jì)范疇,相信不久的將來會(huì)有更多的朋友加入到 R 語言社區(qū)。
          參考目錄
          謝益輝,鄭冰(2008).R 語言的歷史背景、發(fā)展歷程和現(xiàn)狀. 1st China R Conference.
          劉思喆(2012). 商業(yè)數(shù)據(jù)庫對(duì) r 語言的支持.http://www.bjt.name/2012/04/r-language-enterprise/.
          R Development Core Team (2011). R: A Language and Environment for Statistical Computing.R Foundation for Statistical Computing, Vienna, Austria. ISBN 3-900051-07-0.
          Ripley, B. (2011). The r development process. Technical report, Department of Statistics,
          University of Oxford.
          TIOBE (2011).http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html.
          UCLA (2006). R relative to statistical packages. Technical report, UCLA.
          8
          您可能也喜歡:
          第六屆中國R語言會(huì)議(上海)紀(jì)要
          第一屆中國R語言會(huì)議紀(jì)要
          大數(shù)據(jù)時(shí)代和數(shù)據(jù)分析需求,統(tǒng)計(jì)還沾邊嗎?
          也談提高R語言的運(yùn)算效率
          Sweave:打造一個(gè)可重復(fù)的統(tǒng)計(jì)研究流程
          無覓關(guān)聯(lián)推薦[?]
          本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
          打開APP,閱讀全文并永久保存 查看更多類似文章
          猜你喜歡
          類似文章
          數(shù)據(jù)分析師培訓(xùn):這個(gè)數(shù)據(jù)分析的5大軟件, 你會(huì)嗎?
          謝益輝: 統(tǒng)計(jì)學(xué)專業(yè)應(yīng)該使用什么樣的統(tǒng)計(jì)軟件(寫給在統(tǒng)計(jì)學(xué)院學(xué)習(xí)的學(xué)弟學(xué)妹之四) | 統(tǒng)計(jì)之都 (中國統(tǒng)計(jì)學(xué)門戶網(wǎng)站,免費(fèi)統(tǒng)計(jì)學(xué)服務(wù)平臺(tái))
          R語言初識(shí)及安裝
          數(shù)據(jù)分析需要的工具介紹(二)
          數(shù)據(jù)分析學(xué)習(xí)心得(兼談相關(guān)工具)
          醫(yī)學(xué)研究人員為什么要學(xué)習(xí)R語言
          更多類似文章 >>
          生活服務(wù)
          分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
          綁定賬號(hào)成功
          后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
          如果VIP功能使用有故障,
          可點(diǎn)擊這里聯(lián)系客服!

          聯(lián)系客服