一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

R學(xué)習(xí):R for Data Science(一)

 公號生信小課堂 2021-10-28

R語言學(xué)習(xí)系列

今天我們來開始一起學(xué)習(xí)一本書:R for Data Science

數(shù)據(jù)科學(xué)是一個極其廣闊的領(lǐng)域,僅靠一本書是不可能登堂入室的。本書的目標(biāo)是教會你使用最重要的數(shù)據(jù)科學(xué)工具。在一個典型的數(shù)據(jù)科學(xué)項目中,需要的工具模型大體如下圖所示

本書第一部分的目的是讓你盡快掌握數(shù)據(jù)探索的基本工具。數(shù)據(jù)探索是一門藝術(shù),它可以審視數(shù)據(jù),快速生成假設(shè)并進行檢驗,接著重復(fù)、重復(fù)、再重復(fù)。數(shù)據(jù)探索的目的是生成多個有分析價值的線索,以供后續(xù)進行更深入的研究

在本書的這一部分中,您將學(xué)習(xí)到一些有用的工具,這些工具具有即時的回報:
可視化是一個很好的開始R編程的地方,因為回報是如此的明確:你可以制作優(yōu)雅和信息豐富的圖表,幫助你理解數(shù)據(jù)。在數(shù)據(jù)可視化中,您將深入到可視化中,學(xué)習(xí)ggplot2繪圖的基本結(jié)構(gòu),以及將數(shù)據(jù)轉(zhuǎn)換為繪圖的強大技術(shù)。
僅僅可視化通常是不夠的,因此在數(shù)據(jù)轉(zhuǎn)換中,您將學(xué)習(xí)一些關(guān)鍵動詞,這些動詞允許您選擇重要的變量、過濾掉關(guān)鍵的觀察結(jié)果、創(chuàng)建新的變量和計算摘要。
最后,在探索性的數(shù)據(jù)分析中,您將把可視化和轉(zhuǎn)換與您的好奇心和懷疑相結(jié)合,來提出和回答有關(guān)數(shù)據(jù)的有趣問題。

第1章:使用ggplot2進行數(shù)據(jù)可視化

準(zhǔn)備工作

install.packages("tidyverse")library(tidyverse)install.packages("ggplot2")library(ggplot2)

這一行代碼加載了tidyverse的核心R包。在幾乎所有的數(shù)據(jù)分析任務(wù)中,你都會用到這些R包。這行代碼還會告訴你 tidyverse 中的哪些函數(shù)與基礎(chǔ)R包或者已加載的其他 R 包)中的函數(shù)有沖突。

第一步

我們使用第一張圖來回答問題:

大引擎汽車比小引擎汽車更耗油嗎?

你可能已經(jīng)有了答案,但應(yīng)該努力讓答案更精確一些。

引擎大小與燃油效率之間是什么關(guān)系?

是正相關(guān),還是負相關(guān)?

是線性關(guān)系,還是非線性關(guān)系?

mpg數(shù)據(jù)框

可以使用 ggplot2 包中的 mpg 數(shù)據(jù)框(即 ggplot2::mpg)來檢驗自己的答案。數(shù)據(jù)框是變量(列)和觀測(行)的矩形集合。mpg 包含了由美國環(huán)境保護協(xié)會收集的 38 種車型的觀測數(shù)據(jù)。

mpg

mpg 中包括如下變量。
· displ:引擎大小,單位為升。
· hwy:汽車在高速公路上行駛時的燃油效率,單位為英里 / 加侖(mpg)。與燃油效率高的汽車相比,燃油效率低的汽車在行駛相同距離時要消耗更多燃油。

創(chuàng)建ggplot圖形

為了繪制 mpg 的圖形,運行以下代碼將 displ 放在 x 軸, hwy 放在 y 軸:

ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy))

上圖顯示出引擎大小(displ)和燃油效率(hwy)之間是負相關(guān)關(guān)系。

在 ggplot2 中,你可以使用 ggplot() 函數(shù)開始繪圖。ggplot() 創(chuàng)建了一個坐標(biāo)系,你可以在它上面添加圖層。ggplot() 的第一個參數(shù)是要在圖中使用的數(shù)據(jù)集。ggplot(data = mpg)會創(chuàng)建一張空白圖,因為這張圖沒什么意思,所以就不在這里展示了。向 ggplot() 中添加一個或多個圖層就可以完成這張圖。函數(shù) geom_point() 向圖中添加一個點層,這樣就可以創(chuàng)建一張散點圖。

ggplot2 中的每個幾何對象函數(shù)都有一個 mapping 參數(shù)。這個參數(shù)定義了如何將數(shù)據(jù)集中的變量映射為圖形屬性。mapping 參數(shù)總是與 aes() 函數(shù)成對出現(xiàn), aes() 函數(shù)的 x 參數(shù)和 y參數(shù)分別指定了映射到 x 軸的變量與映射到 y 軸的變量。ggplot2 在 data 參數(shù)中尋找映射變量,本例中就是 mpg。

繪圖模板

我們將上面的代碼轉(zhuǎn)換為一個可重用的 ggplot2 繪圖模板。要想生成一張圖,將以下代碼中的尖括號部分替換為數(shù)據(jù)集、幾何對象函數(shù)或映射集合即可:

ggplot(data = <DATA>) + <GEOM_FUNCTION>(mapping = aes(<MAPPINGS>))

圖形屬性映射

可以向二維散點圖中添加第三個變量,比如 class,方式是將它映射為圖形屬性。圖形屬性是圖中對象的可視化屬性,其中包括數(shù)據(jù)點的大小、形狀和顏色。通過改變圖形屬性的值,可以用不同的方式來顯示數(shù)據(jù)點
通過將圖中的圖形屬性映射為數(shù)據(jù)集中的變量,可以傳達出數(shù)據(jù)的相關(guān)信息。例如,可以將點的顏色映射為變量 class,從而揭示每輛汽車的類型:

ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy, color = class))


要想將圖形屬性映射為變量,需要在函數(shù) aes() 中將圖形屬性名稱和變量名稱關(guān)聯(lián)起來。ggplot2 會自動為每個變量值分配唯一的圖形屬性水平(本例中是唯一的顏色),這個過程稱為標(biāo)度變換。ggplot2 還會添加一個圖例,以表示圖形屬性水平和變量值之間的對應(yīng)關(guān)系

在上例中,我們將 class 映射為顏色,但也可以用同樣的方式將其映射為點的大小。在下面的示例中,每個點的實際大小表示其所屬的類別。這里我們收到一條警告信息,因為將無序變量(class)映射為有序圖形屬性(size)可不是好主意。

或者我們也可以將 class 映射為控制數(shù)據(jù)點透明度的 alpha 圖形屬性

ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy, alpha = class))

ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy, shape = class))

還可以將其映射為點的形狀

ggplot2 只能同時使用 6 種形狀。默認情況下,當(dāng)使用這種圖形屬性時,多
出的變量值將不會出現(xiàn)在圖中

對你所使用的每個圖形屬性來說,函數(shù) aes() 都可以將其名稱與一個待顯示變量關(guān)聯(lián)起來。aes() 將圖層中使用的每個圖形屬性映射集合在一起,然后傳遞給該圖層的映射參數(shù)。這一語法強調(diào)了關(guān)于 x 和 y 的重要信息:數(shù)據(jù)點的 x 軸位置和 y 軸位置本身就是圖形屬性,即可以映射為變量來表示數(shù)據(jù)信息的可視化屬性。一旦映射了圖形屬性, ggplot2 會處理好其余的事情。它會為圖形屬性選擇一個合適的標(biāo)度,并創(chuàng)建圖例來表示圖形屬性水平和變量值之間的映射關(guān)系。ggplot2 不會為 x 和 y 這兩個圖形屬性創(chuàng)建圖例,而會創(chuàng)建帶有刻度標(biāo)記和標(biāo)簽的坐標(biāo)軸。坐標(biāo)軸就相當(dāng)于圖例,可以體現(xiàn)出位置和變量值之間的映射關(guān)系

還可以手動為幾何對象設(shè)置圖形屬性。例如,我們可以讓圖中的所有點都為藍色:

ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy), color = "blue")

此時顏色不會傳達關(guān)于變量的信息,只是改變圖的外觀。要想手動設(shè)置圖形屬性,需要按名稱進行設(shè)置,將其作為幾何對象函數(shù)的一個參數(shù)。這也就是說,需要在函數(shù) aes() 的外部進行設(shè)置。此外,還需要為這個圖形屬性選擇一個有意義的值

· 顏色名稱是一個字符串。
· 點的大小用毫米表示。
· 點的形狀是一個數(shù)值,如下圖所示。有些形狀相同,比如 0、 15 和 22 都是正方形。形狀之間的區(qū)別在于 color 和 fill 這兩個圖形屬性??招男螤睿?~14)的邊界顏色由color決定;實心形狀(15~20)的填充顏色由 color 決定;填充形狀(21~24)的邊界顏色由 color 決定,填充顏色由 fill 決定。

舉個栗子

ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy), shape = 1, colour = "blue", size = 5, stroke = 2)

ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy), shape =21, colour = "blue", fill = "grey",size = 5, stroke = 2)

好了,今天就先放到這。

另外,最近收集了一些很好的資源,想分享給大家,順便能漲一些粉,主要有

1. 19年中標(biāo)的各門類國自然題目匯總,以及17年的國自然匯總,部分含摘要!


2. R語言學(xué)習(xí)書籍

R語言實戰(zhàn)(中文完整版)

R數(shù)據(jù)科學(xué)(中文完整版)

ggplot2:數(shù)據(jù)分析與圖形藝術(shù)

30分鐘學(xué)會ggplot2

3. TCGA數(shù)據(jù)整理

前期從https:///datapages/ (UCSC Xena)數(shù)據(jù)庫下載的TCGA數(shù)據(jù),傳到了百度云上備份。

感興趣的話,轉(zhuǎn)發(fā)朋友圈或者100人以上的微信群,截圖發(fā)到公眾號,即可獲取全部資源的百度云鏈接,鏈接7天有效,希望大家趕緊下載。你們的支持是我前進的動力,感謝。

    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    午夜视频成人在线观看| 亚洲一区二区精品免费| 亚洲一区二区三区四区| 制服丝袜美腿美女一区二区| 亚洲一区二区三区熟女少妇| 久久精品国产亚洲熟女| 日韩一区二区三区观看| 免费大片黄在线观看国语| 成人区人妻精品一区二区三区| 老司机精品国产在线视频| 黑鬼糟蹋少妇资源在线观看| 欧美成人黄色一级视频| 超薄丝袜足一区二区三区| 开心久久综合激情五月天| 亚洲中文字幕在线乱码av| 色播五月激情五月婷婷| 香港国产三级久久精品三级| 日韩精品亚洲精品国产精品| 国产日产欧美精品视频| 欧美精品中文字幕亚洲| 日韩色婷婷综合在线观看| 99少妇偷拍视频在线| 日韩精品一区二区亚洲| 亚洲国产精品久久琪琪| 日本午夜一本久久久综合| 午夜色午夜视频之日本| 亚洲av首页免费在线观看| 亚洲中文字幕人妻系列| 精品女同一区二区三区| 91在线国内在线中文字幕| 我想看亚洲一级黄色录像| 国内外免费在线激情视频| 国产精品成人一区二区三区夜夜夜| 国产成人精品在线一区二区三区| 日本婷婷色大香蕉视频在线观看 | 久久精品福利在线观看| 好东西一起分享老鸭窝| 日韩精品免费一区三区| 欧美激情一区=区三区| 爱在午夜降临前在线观看| 好吊一区二区三区在线看|