-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
r統(tǒng)計(jì)數(shù)據(jù)分析程序(數(shù)據(jù)統(tǒng)計(jì)分析及r語言編程)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于r統(tǒng)計(jì)數(shù)據(jù)分析程序的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。
開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁版、PC客戶端
官網(wǎng):https://ai.de1919.com。
創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008
本文目錄:
一、python和r數(shù)據(jù)分析哪個(gè)更好
2012年的時(shí)候我們說R是學(xué)術(shù)界的主流,但是現(xiàn)在Python正在慢慢取代R在學(xué)術(shù)界的地位。不知道是不是因?yàn)榇髷?shù)據(jù)時(shí)代的到來。
Python與R相比速度要快。Python可以直接處理上G的數(shù)據(jù);R不行,R分析數(shù)據(jù)時(shí)需要先通過數(shù)據(jù)庫(kù)把大數(shù)據(jù)轉(zhuǎn)化為小數(shù)據(jù)(通過groupby)才能交給R做分析,因此R不可能直接分析行為詳單,只能分析統(tǒng)計(jì)結(jié)果。所以有人說:Python=R+SQL/Hive,并不是沒有道理的。
Python的一個(gè)最明顯的優(yōu)勢(shì)在于其膠水語言的特性,很多書里也都會(huì)提到這一點(diǎn),一些底層用C寫的算法封裝在Python包里后性能非常高效
(Python的數(shù)據(jù)挖掘包Orange canve
中的決策樹分析50萬用戶10秒出結(jié)果,用R幾個(gè)小時(shí)也出不來,8G內(nèi)存全部占滿)。但是,凡事都不絕對(duì),如果R矢量化編程做得好的話(有點(diǎn)小難度),會(huì)
使R的速度和程序的長(zhǎng)度都有顯著性提升。
R的優(yōu)勢(shì)在于有包羅萬象的統(tǒng)計(jì)函數(shù)可以調(diào)用,特別是在時(shí)間序列分析方面,無論是經(jīng)典還是前沿的方法都有相應(yīng)的包直接使用。
相比之下,Python之前在這方面貧乏不少。但是,現(xiàn)在Python有了
pandas。pandas提供了一組標(biāo)準(zhǔn)的時(shí)間序列處理工具和數(shù)據(jù)算法。因此,你可以高效處理非常大的時(shí)間序列,輕松地進(jìn)行切片/切塊、聚合、對(duì)定期
/不定期的時(shí)間序列進(jìn)行重采樣等。可能你已經(jīng)猜到了,這些工具中大部分都對(duì)金融和經(jīng)濟(jì)數(shù)據(jù)尤為有用,但你當(dāng)然也可以用它們來分析服務(wù)器日志數(shù)據(jù)。于是,近
年來,由于Python有不斷改良的庫(kù)(主要是pandas),使其成為數(shù)據(jù)處理任務(wù)的一大替代方案。
做過幾個(gè)實(shí)驗(yàn):
1. 用python實(shí)現(xiàn)了一個(gè)統(tǒng)計(jì)方法,其中用到了ctypes,multiprocess。
之后一個(gè)項(xiàng)目要做方法比較,又用回R,發(fā)現(xiàn)一些bioconductor上的包已經(jīng)默認(rèn)用parallel了。(但那個(gè)包還是很慢,一下子把所有線程都用掉了,導(dǎo)致整個(gè)電腦使用不能,看網(wǎng)頁非??▇)
2. 用python pandas做了一些數(shù)據(jù)整理工作,類似數(shù)據(jù)庫(kù),兩三個(gè)表來回查、匹配。感覺還是很方便的。雖然這些工作R也能做,但估計(jì)會(huì)慢點(diǎn),畢竟幾十萬行的條目了。
3. 用python matplotlib畫圖。pyplot作圖的方式和R差異很大,R是一條命令畫點(diǎn)東
西,pylot是準(zhǔn)備好了以后一起出來。pyplot的顏色選擇有點(diǎn)尷尬,默認(rèn)顏色比較少,之后可用html的顏色,但是名字太長(zhǎng)了~。pyplot
的legend比R 好用多了,算是半自動(dòng)化了。pyplot畫出來后可以自由拉升縮放,然后再保存為圖片,這點(diǎn)比R好用。
總的來說Python是一套比較平衡的語言,各方面都可以,無論是對(duì)其他語言的調(diào)用,和數(shù)據(jù)源的連接、讀取,對(duì)系統(tǒng)的操作,還是正則表達(dá)和文字處
理,Python都有著明顯優(yōu)勢(shì)。
而R是在統(tǒng)計(jì)方面比較突出。但是數(shù)據(jù)分析其實(shí)不僅僅是統(tǒng)計(jì),前期的數(shù)據(jù)收集,數(shù)據(jù)處理,數(shù)據(jù)抽樣,數(shù)據(jù)聚類,以及比較復(fù)雜的數(shù)據(jù)挖掘算法,數(shù)據(jù)建模等等
這些任務(wù),只要是100M以上的數(shù)據(jù),R都很難勝任,但是Python卻基本勝任。
結(jié)合其在通用編程方面的強(qiáng)大實(shí)力,我們完全可以只使用Python這一種語言去構(gòu)建以數(shù)據(jù)為中心的應(yīng)用程序。
但世上本沒有最好的軟件或程序,也鮮有人能把單一語言挖掘運(yùn)用到極致。尤其是很多人早先學(xué)了R,現(xiàn)在完全不用又舍不得,所以對(duì)于想要學(xué)以致用的人來說,如果能把R和Python相結(jié)合,就更好不過了。
二、常用統(tǒng)計(jì)分析軟件匯總
我們?cè)诠ぷ鬟^程中或者更在找工作的過程中,常常發(fā)現(xiàn)大家數(shù)據(jù)分析的軟件或統(tǒng)計(jì)分析的軟件有很多。我們這里對(duì)常用的統(tǒng)計(jì)分析軟件做一個(gè)簡(jiǎn)單的介紹。
Excel是我們最常見的辦公工具,對(duì)于數(shù)據(jù)量并不是很大的數(shù)據(jù),Excel可以很靈活便捷的處理。其便利程度甚至高于以下提及的任何一個(gè)軟件。所以Excel一定要學(xué)好,不僅要掌握好Excel基本的功能,還要熟練使用Excel公式、Excel圖表等功能。
可以說是目前最標(biāo)準(zhǔn)的最權(quán)威的統(tǒng)計(jì)學(xué)軟件。SAS是一個(gè)程序化的軟件,這么說是因?yàn)樵赟AS中用程序?qū)懕扔貌藛我?jiǎn)便快捷。廣泛應(yīng)用于銀行、金融行業(yè)、生物醫(yī)藥等行業(yè)。
SAS既可以處理橫截面數(shù)據(jù)、時(shí)間序列數(shù)據(jù),也可以處理面板數(shù)據(jù)。
擅長(zhǎng)處理橫截面數(shù)據(jù)。SPSS的界面和菜單做的很優(yōu)秀(除了翻譯不標(biāo)準(zhǔn)很讓人無奈之外),其外觀基本上和Excel很像。在SPSS的使用過程中,我們可以用菜單很方便快捷進(jìn)行操作。這很方便初學(xué)者進(jìn)行學(xué)習(xí),而不用特意去學(xué)習(xí)編寫程序。廣泛應(yīng)用于電信行業(yè)、市場(chǎng)咨詢行業(yè)。如果數(shù)據(jù)量在幾千萬行,用SPSS和SAS處理時(shí)長(zhǎng)差不多。但是對(duì)于更大的數(shù)據(jù)量(億以上級(jí)別),SAS就會(huì)比SPSS在處理速度上凸顯優(yōu)勢(shì)。
擅長(zhǎng)處理時(shí)間序列數(shù)據(jù),計(jì)量經(jīng)濟(jì)學(xué)方向應(yīng)用廣泛。
擅長(zhǎng)處理面板數(shù)據(jù)。和SPSS用戶群重疊度比較高。
R語言對(duì)于橫截面數(shù)據(jù)、時(shí)間序列數(shù)據(jù)、面板數(shù)據(jù)都能處理。其特點(diǎn)在于R軟件是開源的軟件,其中有異常豐富(約有1萬多個(gè))的可以調(diào)用的“包”。
本身不是統(tǒng)計(jì)學(xué)軟件,但是其中有統(tǒng)計(jì)工具箱。工程領(lǐng)域用的多。
其實(shí)作為一名數(shù)據(jù)分析師來說,以上的分析軟件并不需要每一個(gè)都掌握,我們只需要精通最擅長(zhǎng)的一門,同時(shí)掌握另外一門作為輔助也就可以了。這就像是武俠小說里面的大俠,一定有最擅長(zhǎng)的一門兵器,但是同時(shí)呢,肯定也有其他能夠使得上手的兵器。而關(guān)于到底使用什么軟件呢?一定要根據(jù)以上提及的軟件的特點(diǎn),結(jié)合上行業(yè)的特點(diǎn)來決定。任何脫離行業(yè)和業(yè)務(wù)的數(shù)據(jù)分析都無從談起。
另外,這里不得不提及一個(gè)問題,以上的各個(gè)數(shù)據(jù)分析軟件是否有高低貴賤之分呢?我個(gè)人認(rèn)為是沒有的。其道理就像是,我們?cè)谶x擇不同的工具,其出發(fā)點(diǎn)都在于這個(gè)工具一定可以最快捷方便的解決目前的問題。殺雞焉用牛刀,殺雞用殺雞刀,宰牛當(dāng)然用牛刀。
三、怎么學(xué)習(xí)用 R 語言進(jìn)行數(shù)據(jù)挖掘
什么是R語言?應(yīng)該如何開始學(xué)習(xí)/使用R語言呢?
學(xué)習(xí)R有幾個(gè)月了,總算是摸著了一點(diǎn)門道。
寫一些自己的心得和經(jīng)驗(yàn),方便自己進(jìn)一步鼓搗R。如果有人看到我寫的東西而得到了幫助,那就更好了。
什么是R?R的優(yōu)點(diǎn)何在?
R是一個(gè)數(shù)據(jù)分析軟件。簡(jiǎn)單點(diǎn)說,R可以看做MATLAB的“替代品”,而且具有免費(fèi)開源的優(yōu)勢(shì)。R可以像MATLAB一樣解決有關(guān)數(shù)值計(jì)算的問題,而且具有強(qiáng)大的數(shù)據(jù)處理,繪圖功能。
R擁有大量的統(tǒng)計(jì)分析工具包,我的感覺是——只有我們沒聽說過的工具,絕對(duì)沒有R沒有的工具包。配合著各種各樣的工具包,你可以毀滅任何關(guān)于數(shù)據(jù)和統(tǒng)計(jì)的問題。因?yàn)閿?shù)據(jù)包的數(shù)量龐大,所以查找自己需要的數(shù)據(jù)包,可能很煩惱。
如果有以下技能,學(xué)R會(huì)很方便:
1.已經(jīng)了解些高級(jí)程序語言(非常重要)
2.英語不壞
3.概率統(tǒng)計(jì)理論基礎(chǔ)
4.看數(shù)據(jù)不頭疼
5.看cmd or terminal 也不頭疼
你需要一本適合你的R語言教材
我開始學(xué)習(xí)R的時(shí)候,找到了這個(gè)帖子
非常強(qiáng)大的關(guān)于R語言教材綜述。我非常感謝原帖作者。你可以參考這個(gè)帖子選一本適合你的教材。
我這里在說一下我主要使用的幾本教材的心得:
1. 統(tǒng)計(jì)建模與R軟件(薛毅著):非常優(yōu)秀的R語言入門教材,涵蓋了所有R的基礎(chǔ)應(yīng)用&方法,示例代碼也很優(yōu)秀。作為一本中文的程序語言教材,絕對(duì)是最優(yōu)秀的之一。但是要看懂這本書,還是需要“已經(jīng)了解些高級(jí)程序語言”。PS:我親愛的吉林大學(xué)圖書館,有兩本該教材流通,我常年霸占一本。
2. R in Nutshell:從講解內(nèi)容上看,與上一本差別不大,在R語言的應(yīng)用上都是比較初級(jí)的入門,但是有些R軟件&語言上的特性,寫得比薛毅老師的教材深刻。這本書最大的優(yōu)點(diǎn)就是工具書,方便開始入門時(shí)候,對(duì)有些“模棱兩可”的東西的查詢。PS:我將這本書打印了出來,簡(jiǎn)單的從頭到尾翻過,最大的用途就是像一本字典一樣查詢。
3. ggplot2 Elegant Graphics for Data:這是一本介紹如何使用ggplot2包,進(jìn)行繪圖的書。ggplot2包,非常強(qiáng)大的繪圖工具,幾乎可以操作任何圖中的元素,而且是提供添加圖層的方式讓我們可以一步步的作圖。提到ggplot2包,應(yīng)該提到一個(gè)詞——“潛力無窮”,每一個(gè)介紹
ggplot2的人,都會(huì)用這個(gè)形容詞。這本書最大的作用也是當(dāng)做一本繪圖相關(guān)的工具書,書中講解詳細(xì),細(xì)致,每個(gè)小參數(shù)的變動(dòng)都會(huì)配圖幫你理解。PS:這本書我也打印出來了,非常適合查詢。
幾個(gè)可以逐步提高R能力的網(wǎng)站
1.R-bloggers: 這里有關(guān)于R和數(shù)據(jù)的一切討論,前沿的問題,基礎(chǔ)的問題,應(yīng)有盡有。可以說這些家伙們讓R變得越來越強(qiáng)大。我RSS了這個(gè)網(wǎng)站,每天都看一下有什么我感興趣的方法和話題,慢慢的積累一些知識(shí),是一個(gè)很有意思的過程。
2.統(tǒng)計(jì)之都: 這是一個(gè)有大量R使用者交流的論壇,你可以上去提問題,總有好心人來幫助你的。
3.R客: 是關(guān)于R的一個(gè)博客,更新不快,偏重國(guó)內(nèi)R的一些發(fā)展。
R的使用環(huán)境
如果你看見terminal or cmd就打怵的話,一定要使用Rstudio。Rstudio的優(yōu)點(diǎn)是,集成了Rconsole、腳本編輯器、可視化的數(shù)據(jù)查詢、歷史命令、幫助查詢等,還有的完美的腳本和console的互動(dòng)。畢竟是可視化的界面,有許多按鈕可以用。R 的腳本編輯器很蛋疼,就比記事本多了個(gè)顏色高亮吧,不適合編寫腳本,但適合調(diào)試腳本。
最后,說一下,剛開始學(xué)習(xí)R或者其他什么語言,都有一個(gè)通病,就是一些小細(xì)節(jié)的不知道,或者是記得不清楚,往往一個(gè)蛋疼的bug就可以耗掉大量的時(shí)間,這是一個(gè)讓人想砸電腦的過程。我往后,會(huì)在博客里記錄一些讓我蛋很疼的小細(xì)節(jié)。本文分為6個(gè)部分,分別介紹初級(jí)入門,高級(jí)入門,繪圖與可視化,計(jì)量經(jīng)濟(jì)學(xué),時(shí)間序列分析,金融等。
1.初級(jí)入門
《An Introduction to R》,這是官方的入門小冊(cè)子。其有中文版,由丁國(guó)徽翻譯,譯名為《R導(dǎo)論》?!禦4Beginners》,這本小冊(cè)子有中文版應(yīng)該叫《R入門》。除此之外,還可以去讀劉思喆的《153分鐘學(xué)會(huì)R》。這本書收集了R初學(xué)者提問頻率最高的153個(gè)問題。為什么叫153分鐘呢?因?yàn)樽畛踝髡邔懥?53個(gè)問題,閱讀一個(gè)問題花費(fèi)1分鐘時(shí)間,全局下來也就是153分鐘了。有了這些基礎(chǔ)之后,要去讀一些經(jīng)典書籍比較全面的入門書籍,比如《統(tǒng)計(jì)建模與R軟件》,國(guó)外還有《R Cookbook》和《R in action》,本人沒有看過,因此不便評(píng)論。
最后推薦,《R in a Nutshell》。對(duì),“果殼里面的R”!當(dāng)然,是開玩笑的,in a Nutshell是俚語,意思大致是“簡(jiǎn)單的說”。目前,我們正在翻譯這本書的中文版,大概明年三月份交稿!這本書很不錯(cuò),大家可以從現(xiàn)在開始期待,并廣而告知一下!
2.高級(jí)入門
讀了上述書籍之后,你就可以去高級(jí)入門階段了。這時(shí)候要讀的書有兩本很經(jīng)典的?!禨tatistics with R》和《The R book》。之所以說這兩本書高級(jí),是因?yàn)檫@兩本書已經(jīng)不再限于R基礎(chǔ)了,而是結(jié)合了數(shù)據(jù)分析的各種常見方法來寫就的,比較系統(tǒng)的介紹了R在線性回歸、方差分析、多元統(tǒng)計(jì)、R繪圖、時(shí)間序列分析、數(shù)據(jù)挖掘等各方面的內(nèi)容,看完之后你會(huì)發(fā)現(xiàn),哇,原來R能做的事情這么多,而且做起來是那么簡(jiǎn)潔。讀到這里已經(jīng)差不多了,剩下的估計(jì)就是你要專門攻讀的某個(gè)方面內(nèi)容了。下面大致說一說。
3.繪圖與可視化
亞里斯多德說,“較其他感覺而言,人類更喜歡觀看”。因此,繪圖和可視化得到很多人的關(guān)注和重視。那么,如何學(xué)習(xí)R畫圖和數(shù)據(jù)可視化呢?再簡(jiǎn)單些,如何畫直方圖?如何往直方圖上添加密度曲線呢?我想讀完下面這幾本書你就大致會(huì)明白了。
首先,畫圖入門可以讀《R Graphics》,個(gè)人認(rèn)為這本是比較經(jīng)典的,全面介紹了R中繪圖系統(tǒng)。該書對(duì)應(yīng)的有一個(gè)網(wǎng)站,google之就可以了。更深入的可以讀《Lattice:Multivariate Data Visualization with R》。上面這些都是比較普通的。當(dāng)然,有比較文藝和優(yōu)雅的——ggplot2系統(tǒng),看《ggplot2:Elegant Graphics for Data Analysis》。還有數(shù)據(jù)挖掘方面的書:《Data Mining with Rattle and R》,主要是用Rattle軟件,個(gè)人比較喜歡Rattle!當(dāng)然,Rattle不是最好的,Rweka也很棒!再有就是交互圖形的書了,著名的交互系統(tǒng)是ggobi,這個(gè)我已經(jīng)喜歡兩年多了,關(guān)于ggobi的書有《Interactive and Dynamic Graphics for Data Analysis With R and GGobi》,不過,也只是適宜入門,更多更全面的還是去ggobi的主頁吧,上面有各種資料以及包的更新信息!
特別推薦一下,中文版繪圖書籍有《現(xiàn)代統(tǒng)計(jì)圖形》。
4.計(jì)量經(jīng)濟(jì)學(xué)
關(guān)于計(jì)量經(jīng)濟(jì)學(xué),首先推薦一本很薄的小冊(cè)子:《Econometrics In R》,做入門用。然后,是《Applied Econometrics with R》,該書對(duì)應(yīng)的R包是AER,可以安裝之后配合使用,效果甚佳。計(jì)量經(jīng)濟(jì)學(xué)中很大一部分是關(guān)于時(shí)間序列分析的,這一塊內(nèi)容在下面的地方說。
5.時(shí)間序列分析
時(shí)間序列書籍的書籍分兩類,一種是比較普適的書籍,典型的代表是:《Time Series Analysis and Its Applications :with R examples》。該書介紹了各種時(shí)間序列分析的經(jīng)典方法及實(shí)現(xiàn)各種經(jīng)典方法的R代碼,該書有中文版。如果不想買的話,建議去作者主頁直接下載,英文版其實(shí)讀起來很簡(jiǎn)單。時(shí)間序列分析中有一大塊兒是關(guān)于金融時(shí)間序列分析的。這方面比較流行的書有兩本《Analysis of financial time series》,這本書的最初是用的S-plus代碼,不過新版已經(jīng)以R代碼為主了。這本書適合有時(shí)間序列分析基礎(chǔ)和金融基礎(chǔ)的人來看,因?yàn)闀嘘P(guān)于時(shí)間序列分析的理論以及各種金融知識(shí)講解的不是特別清楚,將極值理論計(jì)算VaR的部分就比較難看懂。另外一個(gè)比較有意思的是Rmetrics推出的《TimeSeriesFAQ》,這本書是金融時(shí)間序列入門的東西,講的很基礎(chǔ),但是很難懂。對(duì)應(yīng)的中文版有《金融時(shí)間序列分析常見問題集》,當(dāng)然,目前還沒有發(fā)出來。經(jīng)濟(jì)領(lǐng)域的時(shí)間序列有一種特殊的情況叫協(xié)整,很多人很關(guān)注這方面的理論,關(guān)心這個(gè)的可以看《Analysis of Integrated and Cointegrated Time Series with R》。最后,比較高級(jí)的一本書是關(guān)于小波分析的,看《Wavelet Methods in Statistics with R》。附加一點(diǎn),關(guān)于時(shí)間序列聚類的書籍目前比較少見,是一個(gè)處女地,有志之士可以開墾之!
6.金融
金融的領(lǐng)域很廣泛,如果是大金融的話,保險(xiǎn)也要被納入此間。用R做金融更多地需要掌握的是金融知識(shí),只會(huì)數(shù)據(jù)分析技術(shù)意義寥寥。我覺得這些書對(duì)于懂金融、不同數(shù)據(jù)分析技術(shù)的人比較有用,只懂?dāng)?shù)據(jù)分析技術(shù)而不動(dòng)金融知識(shí)的人看起來肯定如霧里看花,甚至有人會(huì)覺得金融分析比較低級(jí)。這方面比較經(jīng)典的書籍有:《Advanced Topics in Analysis of Economic and Financial Data Using R》以及《Modelling Financial Time Series With S-plus》。金融產(chǎn)品定價(jià)之類的常常要用到隨機(jī)微分方程,有一本叫《Simulation Inference Stochastic Differential Equations:with R examples》的書是關(guān)于這方面的內(nèi)容的,有實(shí)例,內(nèi)容還算詳實(shí)!此外,是風(fēng)險(xiǎn)度量與管理類。比較經(jīng)典的有《Simulation Techniques in Financial Risk Management》、《Modern Actuarial Risk Theory Using R》和《Quantitative Risk Management:Concepts, Techniques and Tools》。投資組合分析類和期權(quán)定價(jià)類可以分別看《Portfolio Optimization with R》和《Option Pricing and Estimation of Financial Models with R》。
7.數(shù)據(jù)挖掘
這方面的書不多,只有《Data Mining with R:learing with case studies》。不過,R中數(shù)據(jù)挖掘方面的包已經(jīng)足夠多了,參考包中的幫助文檔就足夠了。
四、R數(shù)據(jù)科學(xué)(五)探索性數(shù)據(jù)分析
明確概念:探索性數(shù)據(jù)分析(exploratory data analysis, EDA),一般過程為:
(1) 對(duì)數(shù)據(jù)提出問題。
(2) 對(duì)數(shù)據(jù)進(jìn)行可視化、轉(zhuǎn)換和建模,進(jìn)而找出問題的答案。
(3) 使用上一個(gè)步驟的結(jié)果來精煉問題,并提出新問題。
確定變量是分類變量還是連續(xù)變量,要想檢查分類變量的分布,可以使用條形圖:
條形的高度表示每個(gè) x 值中觀測(cè)的數(shù)量,可以使用 dplyr::count() 手動(dòng)計(jì)算出這些值:
要想檢查連續(xù)變量的分布,可以使用直方圖:
可以通過 dplyr::count() 和 ggplot2::cut_width() 函數(shù)的組合來手動(dòng)計(jì)算結(jié)果. binwidth 參數(shù)來設(shè)定直方圖中的間隔的寬度,該參數(shù)是用 x 軸變量的單位來度量的。
在同一張圖上疊加多個(gè)直方圖, 用geom_freqploy()代替geom_histogram(),用折線表示。
相似值聚集形成的簇表示數(shù)據(jù)中存在子組。
coord_cartesian() 函數(shù)中有一個(gè)用于放大 x 軸的 xlim() 參數(shù)。 ggplot2 中也有功能稍有區(qū)
別的 xlim() 和 ylim() 函數(shù):它們會(huì)忽略溢出坐標(biāo)軸范圍的那些數(shù)據(jù)。
如果帶有異常值和不帶異常值的數(shù)據(jù)分別進(jìn)行分析,結(jié)果差別較大的話要找出異常值的原因,如果差別不大,可以用NA代替。
5.3.4 練習(xí)
(1)研究 x、 y 和 z 變量在 diamonds 數(shù)據(jù)集中的分布。你能發(fā)現(xiàn)什么?思考一下,對(duì)于一條
鉆石數(shù)據(jù),如何確定表示長(zhǎng)、寬和高的變量?
(2)研究 price 的分布,你能發(fā)現(xiàn)不尋常或令人驚奇的事情嗎?(提示:仔細(xì)考慮一下
binwidth 參數(shù),并確定試驗(yàn)了足夠多的取值。)
(3) 0.99 克拉的鉆石有多少? 1 克拉的鉆石有多少?造成這種區(qū)別的原因是什么?
(4)比較并對(duì)比 coord_cartesina() 和 xlim()/ylim() 在放大直方圖時(shí)的功能。如果不設(shè)置
binwidth 參數(shù),會(huì)發(fā)生什么情況?如果將直方圖放大到只顯示一半的條形,那么又會(huì)發(fā)
生什么情況?
數(shù)據(jù)中有異常值,可以將異常值去掉:
一般不建議去掉,建議使用缺失值來代替異常值。
ifelse函數(shù)參數(shù)1放入邏輯判斷,如果為T,結(jié)果就是第二個(gè)參數(shù)的值,如果為F,就是第三個(gè)參數(shù)的值。
ggplot2會(huì)忽略缺失值:
練習(xí)
(1) 直方圖如何處理缺失值?條形圖如何處理缺失值?為什么會(huì)有這種區(qū)別?
(2) na.rm = TRUE 在 mean() 和 sum() 函數(shù)中的作用是什么?
移除缺失值再進(jìn)行統(tǒng)計(jì)
按分類變量的分組顯示連續(xù)變量分布的另一種方式是使用箱線圖
練習(xí)
(1) 前面對(duì)比了已取消航班和未取消航班的出發(fā)時(shí)間,使用學(xué)習(xí)到的知識(shí)對(duì)這個(gè)對(duì)比的可視
化結(jié)果進(jìn)行改善。
(2) 在鉆石數(shù)據(jù)集中,哪個(gè)變量對(duì)于預(yù)測(cè)鉆石的價(jià)格最重要?這個(gè)變量與切割質(zhì)量的關(guān)系是
怎樣的?為什么這兩個(gè)變量的關(guān)系組合會(huì)導(dǎo)致質(zhì)量更差的鉆石價(jià)格更高呢?
(3) 安裝 ggstance 包,并創(chuàng)建一個(gè)橫向箱線圖。這種方法與使用 coord_flip() 函數(shù)有何區(qū)別?
(4) 箱線圖存在的問題是,在小數(shù)據(jù)集時(shí)代開發(fā)而成,對(duì)于現(xiàn)在的大數(shù)據(jù)集會(huì)顯示出數(shù)量極
其龐大的異常值。解決這個(gè)問題的一種方法是使用字母價(jià)值圖。安裝 lvplot 包,并嘗試
使用 geom_lv() 函數(shù)來顯示價(jià)格基于切割質(zhì)量的分布。你能發(fā)現(xiàn)什么問題?如何解釋這
種圖形?
(5) 比較并對(duì)比 geom_violin()、分面的 geom_histogram() 和著色的 geom_freqploy()。每種方法的優(yōu)缺點(diǎn)是什么?
(6) 對(duì)于小數(shù)據(jù)集,如果要觀察連續(xù)變量和分類變量間的關(guān)系,有時(shí)使用 geom_jitter() 函數(shù)是特別有用的。 ggbeeswarm 包提供了和 geom_jitter()相似的一些方法。列出這些方法
并簡(jiǎn)單描述每種方法的作用。
兩個(gè)分類變量的關(guān)系肯定要先計(jì)數(shù),可以用geom_count()函數(shù)
d3heatmap 或 heatmaply 包可以生成交互式圖
練習(xí)
(1) 如何調(diào)整 count 數(shù)據(jù),使其能更清楚地表示出切割質(zhì)量在顏色間的分布,或者顏色在切
割質(zhì)量間的分布?
(2) 使用 geom_tile() 函數(shù)結(jié)合 dplyr來探索平均航班延誤數(shù)量是如何隨著目的地和月份的
變化而變化的。為什么這張圖難以閱讀?如何改進(jìn)?
(3) 為什么在以上示例中使用 aes(x = color, y = cut) 要比 aes(x = cut, y = color) 更好?
連續(xù)變量之間的關(guān)系一般用散點(diǎn)圖來表示。geom_point()
對(duì)于大數(shù)據(jù)集,為了避免重合,可以用geom_bin2d() 和 geom_hex()函數(shù)將坐標(biāo)平面分為二維分箱,并使用一種填充顏色表示落入
每個(gè)分箱的數(shù)據(jù)點(diǎn)。
另一種方式是對(duì)一個(gè)連續(xù)變量進(jìn)行分箱,因此這個(gè)連續(xù)變量的作用就相當(dāng)于分類變量。
cut_width(x, width) 函數(shù)將 x 變量分成寬度為 width 的分箱。參數(shù) varwidth = TRUE 讓箱線圖的寬度與觀測(cè)數(shù)量成正比。
cut_number() 函數(shù)近似地顯示每個(gè)分箱中的數(shù)據(jù)點(diǎn)的數(shù)量
練習(xí)
(1) 除了使用箱線圖對(duì)條件分布進(jìn)行摘要統(tǒng)計(jì),你還可以使用頻率多邊形圖。使用 cut_
width() 函數(shù)或 cut_number() 函數(shù)時(shí)需要考慮什么問題?這對(duì) carat 和 price 的二維分
布的可視化表示有什么影響?
(2) 按照 price 分類對(duì) carat 的分布進(jìn)行可視化表示。
(3) 比較特別大的鉆石和比較小的鉆石的價(jià)格分布。結(jié)果符合預(yù)期嗎?還是出乎意料?
(4) 組合使用你學(xué)習(xí)到的兩種技術(shù),對(duì) cut、 carat 和 price 的組合分布進(jìn)行可視化表示。
(5) 二維圖形可以顯示一維圖形中看不到的離群點(diǎn)。例如,以下圖形中的有些點(diǎn)具有異常的
x 值和 y 值組合,這使得這些點(diǎn)成為了離群點(diǎn),即使這些點(diǎn)的 x 值和 y 值在單獨(dú)檢驗(yàn)時(shí)
似乎是正常的。
ggplot(data = diamonds) +
geom_point(mapping = aes(x = x, y = y)) +
coord_cartesian(xlim = c(4, 11), ylim = c(4, 11))
數(shù)據(jù)中的模式提供了關(guān)系線索,用于探索兩個(gè)變量的相關(guān)性。
模型是用于從數(shù)據(jù)中抽取模式的一種工具。
殘差(預(yù)測(cè)值和實(shí)際值之間的差別)
閱讀推薦:
生信技能樹公益視頻合輯:學(xué)習(xí)順序是linux,r,軟件安裝,geo,小技巧,ngs組學(xué)!
B站鏈接: https://m.bilibili.com/space/338686099
YouTube鏈接: https://m.youtube.com/channel/UC67sImqK7V8tSWHMG8azIVA/playlists
生信工程師入門最佳指南: https://mp.weixin.qq.com/s/vaX4ttaLIa19MefD86WfUA
以上就是關(guān)于r統(tǒng)計(jì)數(shù)據(jù)分析程序相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
r統(tǒng)計(jì)數(shù)據(jù)分析程序(數(shù)據(jù)統(tǒng)計(jì)分析及r語言編程)
企業(yè)形象設(shè)計(jì)(企業(yè)形象設(shè)計(jì)案例)