R入門1 R入門與基礎(chǔ)繪圖系統(tǒng)學習筆記

photo by Julia

我的R學習領(lǐng)路人是北大生信在讀博士孟浩巍,學習R是從參加他的知乎live課程《R入門與基礎(chǔ)繪圖系統(tǒng)》開始的冠骄,從第一次講座時間到現(xiàn)在雖然才過去不到一周攒读,但我已經(jīng)可以把R當做一個不太好用的excel來進行簡單的圖形繪制了片排。接下來對我的課程學習進行小結(jié)分享寨腔,并做一下接下來的學習規(guī)劃。

1. 知乎live課程收獲

早在第一次生信入門課上就對R有了些許的了解率寡,知道它是一個強大的繪圖與統(tǒng)計工具迫卢,便決定好好學習它。雖然很多人都先推薦學linux系統(tǒng)冶共,學其他一門腳本語言乾蛤,但抱著對它用來作圖的極大興趣每界,我竟然現(xiàn)在windows系統(tǒng)上裝上了它,這一用起來就有些一發(fā)不可收拾了:它的功能太強大了家卖,它的繪圖太便捷了眨层。

孟博士知乎live課程大綱

R語言的由來:

R語言由付費的S語言發(fā)展而來的,而S語言誕生于著名的貝爾實驗室上荡。1995年趴樱,兩位R語言之父正式推出R軟件恼策。

R語言的優(yōu)勢和劣勢

R語言的優(yōu)勢在于它的開源裤唠,它優(yōu)秀的跨平臺性鹃操,它支持腳本和批處理甘磨,同時其良好的統(tǒng)計處理、靈活的語言铣墨、便捷的畫圖方法及豐富的R包讓它在生物信息學中有著無可取代的作用浦夷。

盡管如此邑飒,開源的R語言也讓它的維護變得艱難金刁,其說明文檔也相當不規(guī)范,給閱讀帶來了一定的困擾议薪。同時較慢的運算速度尤蛮、極慢的for循環(huán)、較大的內(nèi)存消耗和非命令行條件下只支持單核計算的特點也限制了它的一些應用斯议。

R語言開發(fā)環(huán)境的搭建

目前产捞,我練習的還是基于windows系統(tǒng)下的R,其安裝和運行也很方便哼御。在官網(wǎng)下載對應系統(tǒng)的R語言包安裝即可坯临。同時還需要安裝R Studio,即可構(gòu)建出一個良好的開發(fā)環(huán)境恋昼。

在一切就緒后看靠,有一個小小的設置會讓你的界面更好用,那就是主題配置和高亮函數(shù)液肌。具體操作如下:

主題配置:右上角Tools-Global Options-Appearance-Theme-Cobalt(群主推薦)挟炬;

高亮R函數(shù):Tools-Global Options-Code-Display-Hightlight R function calls -Apply。

關(guān)于R的學習資料嗦哆,主播也給我們推薦了很多谤祖,接下來我將選擇較為容易的R Beginner作為我的入門參考書目,希望自己可以早點做到真正的入門老速。

溫馨小提示:

用R要養(yǎng)成良好習慣粥喜,及時清空環(huán)境變量:rm(list=ls())

Run的快捷方式為ctrl+enter

R包

在R中當需要完成特定的程序功能時,需要用相應的R包來實現(xiàn)橘券。而安裝R包的方式主要有以下兩種:

1.?CRAN:R語言官方發(fā)布的包额湘,模板需要聯(lián)網(wǎng)卿吐,install.packages(“package name”)。

2. Bioconductor:專門做生信分析的R包的集合缩挑,biocLite(“package name”)但两,該網(wǎng)站還有很多優(yōu)秀免費的course可供我們?nèi)W習。

由于R存在交叉調(diào)用且出錯難以辨認的問題供置,下載后安裝會有依賴性問題谨湘,所以推薦在線安裝。

R的繪圖系統(tǒng)

R在繪圖功能很強大芥丧,具體可分為R的基礎(chǔ)繪圖系統(tǒng)和高級繪圖系統(tǒng)紧阔,由于高級繪圖系統(tǒng)很多參數(shù)難以更改,所以主播推薦基礎(chǔ)繪圖续担,它可以做出來更多的定制東西來擅耽。所以我先從基礎(chǔ)繪圖學起,同時簡單了解一下高級繪圖物遇。

基礎(chǔ)繪圖又包括兩類:一是低級繪圖函數(shù)乖仇,如創(chuàng)建畫布、點询兴、線乃沙、多邊形等;二是高級繪圖函數(shù)诗舰,如plot()警儒,boxplot(),hist()眶根,density()等蜀铲。

高級繪圖也包括兩類:一是grid繪圖系統(tǒng),如基于grid繪圖系統(tǒng)開發(fā)的ggplot2等属百;二是lattice繪圖系統(tǒng)记劝。

2. R 的練習

有了以上理論知識,就可以實戰(zhàn)上機了诸老,因為計算機語言的學習光看書是沒用的隆夯,關(guān)鍵是要練習。我跟著主播的步伐别伏,從安裝到開始敲代碼蹄衷,一步一步進行中。

1.簡單操作和基本函數(shù)的練習厘肮。

(1)練習print(“Hello word”)

(2)常用的賦值操作

(3)生成向量

(4)創(chuàng)建序列seq/rep

(5)c函數(shù)合并向量

(6)刪除奇數(shù)位置

(7)創(chuàng)建矩陣

(8)取矩陣一部分

(9)創(chuàng)建數(shù)據(jù)表格式

交作業(yè)了愧口,我的相關(guān)練習代碼如下:

練習1-4
練習5-8
練習9 data frame

2.基本作圖

有了以上基礎(chǔ)知識,就可以進行簡單圖形的繪制了类茂,如散點圖(plot)耍属,條形圖(barplot)托嚣,直方圖(hist),箱線圖(boxplot)等厚骗。

基本作圖代碼


基本作圖


3.作圖進階

當然示启,一個好的圖片,可能需要幾易其稿领舰,那么我們也來感受一下修圖的樂趣夫嗓。

作圖進階代碼
作圖進階abc

當我自己做出來這幾幅圖時,突然有了小小的成就感冲秽,真正體會到R語言這一工具的強大舍咖,于是也有了繼續(xù)學習下去的興趣了。

4.其他常用操作锉桑,寫循環(huán)排霉,做判斷,自定義函數(shù)

其他常用操作

5.項目實戰(zhàn)

有了以上的基礎(chǔ)民轴,我們可以體驗小項目啦攻柠,主播給我們找了一個真實的RNA-seq數(shù)據(jù),教我們?nèi)绾稳プ隹蒲兄谐R姷膒lot(散點圖)和heatmap(熱圖)后裸。到這里辙诞,真有一種入門了的感覺呢。

具體步驟如下:

(1)安裝heatmap并加載:install.packages("pheatmap") / library(pheatmap)

(2)數(shù)據(jù)導入:read.table轻抱,注意路徑符號“/”,帶標題“header=T”,分隔符為“\t”

(3)差異基因篩選金標準三條均須滿足(涉及:或“|”旦部,且“&”):

a.統(tǒng)計顯著性:p<0.05;

b.表達量變化明顯:log2(fold change)>1or<-1祈搜;

c.有生物學意義:one of the fpkm>1。

(4)繪制箱線圖士八,看表達量分布(distribution)

(5)繪制熱圖容燕,看基因差異變化趨勢。

RNA-seq數(shù)據(jù)實戰(zhàn)代碼


RNA-seq數(shù)據(jù)實戰(zhàn)


6.獨立練習

有了以上的數(shù)據(jù)婚度,我迫不及待的找出來自己一部分RNA-seq來練習蘸秘,趁熱打鐵。我的數(shù)據(jù)保存格式為excel蝗茁,教程里并沒有交該類數(shù)據(jù)的導入醋虏,但我學到了如何用google解決問題,并嘗到了甜頭哮翘,順利完成了獨立練習颈嚼。

具體步驟如下:

(1)安裝heatmap并加載(已有):install.packages("pheatmap") / library(pheatmap);

(2)數(shù)據(jù)導入:將excel保存為CSV格式饭寺,讀取方式為read.csv阻课,注意路徑符號“/”,帶標題“header=T”叫挟,分隔符為“\t”

(3)差異基因篩選金標準三條均須滿足(涉及:或“|”,且“&”):

a.統(tǒng)計顯著性:p<0.05;

b.表達量變化明顯:log2(fold change)>1or<-1限煞;

c.有生物學意義:one of the fpkm>1抹恳。

(4)繪制箱線圖,看表達量分布(distribution)

(5)繪制熱圖署驻,看基因差異變化趨勢奋献。

獨立練習代碼
獨立練習圖

3.總結(jié)與展望

不到一周的學習自己有這么多收獲已經(jīng)很欣喜了,這無不得益于孟主播的精彩直播硕舆。當然秽荞,我深知自己連一只腳都還邁進,還需要進一步去學習去鞏固抚官。但學習中的樂趣和興趣顯然成為自己堅持下去的理由和信心扬跋。接下來,我將開始R beginner的學習凌节,爭取用一周的時間完成該書的閱讀和相關(guān)代碼的練習钦听,期待自己下一周的小結(jié)吧。

本文參考了孟浩巍博士知乎live相關(guān)課程倍奢,在此表示感謝朴上,請勿隨意轉(zhuǎn)載。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?豬豬頭 2018.4.29 于倫敦

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末卒煞,一起剝皮案震驚了整個濱河市痪宰,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌畔裕,老刑警劉巖衣撬,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異扮饶,居然都是意外死亡具练,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進店門甜无,熙熙樓的掌柜王于貴愁眉苦臉地迎上來扛点,“玉大人,你說我怎么就攤上這事岂丘×昃浚” “怎么了?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵奥帘,是天一觀的道長畔乙。 經(jīng)常有香客問我,道長翩概,這世上最難降的妖魔是什么牲距? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任返咱,我火速辦了婚禮,結(jié)果婚禮上牍鞠,老公的妹妹穿的比我還像新娘咖摹。我一直安慰自己,他們只是感情好难述,可當我...
    茶點故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布萤晴。 她就那樣靜靜地躺著,像睡著了一般胁后。 火紅的嫁衣襯著肌膚如雪店读。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天攀芯,我揣著相機與錄音屯断,去河邊找鬼。 笑死侣诺,一個胖子當著我的面吹牛殖演,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播年鸳,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼趴久,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了搔确?” 一聲冷哼從身側(cè)響起彼棍,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎膳算,沒想到半個月后滥酥,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡畦幢,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了缆蝉。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宇葱。...
    茶點故事閱讀 38,117評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖刊头,靈堂內(nèi)的尸體忽然破棺而出黍瞧,到底是詐尸還是另有隱情,我是刑警寧澤原杂,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布印颤,位于F島的核電站,受9級特大地震影響穿肄,放射性物質(zhì)發(fā)生泄漏年局。R本人自食惡果不足惜际看,卻給世界環(huán)境...
    茶點故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望矢否。 院中可真熱鬧仲闽,春花似錦、人聲如沸僵朗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽验庙。三九已至顶吮,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間粪薛,已是汗流浹背悴了。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留汗菜,地道東北人让禀。 一個月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像陨界,于是被迫代替她去往敵國和親巡揍。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,877評論 2 345

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,518評論 25 707
  • TaoYan 簡介 本文將繪制靜態(tài)與交互式熱圖菌瘪,需要使用到以下R包和函數(shù):heatmap():用于繪制簡單熱圖的函...
    taoyan閱讀 47,386評論 4 129
  • 中國古代人物畫的重要特點: (1)中國古代人物畫對于人物的描繪,不僅僅是滿足外形的相似,而是更著重人物性格與內(nèi)心世...
    陳野思逸閱讀 3,460評論 0 0
  • 小機器人緊張地答道:“這是一次bug腮敌。在電梯中,我們的仿生蚊子通過拍攝的人臉照片來識別是否是人類俏扩,只要是人類就啟動...
    galilajiao2006閱讀 180評論 0 1
  • L/2016-4-6 送給我的王大媽录淡。 她曾經(jīng)問到“大嬸兒捌木,你什么時候給我也寫篇文啊,讓我也看看自己的青春”嫉戚。我也...
    MY林小妖閱讀 1,287評論 0 1