首先,你需要一個Rstudio,其次每一個項目需要一個文件夾以方便自己且路徑中不要出現(xiàn)中文和空格,如果需要請用下劃線替代。
1.安裝R包
if(!require("tidyr")) install.packages("tidyr",update = F,ask = F)?
#或者選擇安裝Bioconductor上的R包
if(!require("limma")) BiocManager::install("limma",update = F,ask = F)
#一般情況下可選擇
install.packages("png")##需要注意的是括號里面的R包必須用雙引號,否則會報錯
2.邏輯運算
a<-3
b<-4
a==b #判斷a是否等于b,輸出為FALSE
a!=b #判斷a是否不等于b,輸出為TRUE
a>=b #判斷a是否大于等于b
a<=b #判斷a是否小于等于b
3. 數(shù)據(jù)類型
c <-1>10 #c為FALSE
d <- 1:10 #d為1,2,3...10,當然產生序列也可以用seq(1,10,by=1),請注意rep(1,2,times=3)產生的是1,2,1,2,1,2,而rep(1,2,each=3)產生的是1,1,1,2,2,2
e<- "apple"
#查看數(shù)據(jù)類型
class(a)輸出為"numeric"(數(shù)字)
class(c)輸出為"logical" (邏輯)
class(e)輸出為"character" (字符串)
#改變數(shù)據(jù)類型(用as.)
b <- as.character(b) #將b改為字符串類型,輸出為"4",這里的"4"不能用于計算,因為是字符串
需要注意的是,as.factor()非常重要,是用來分類或排序的!但要注意因子變數(shù)字的時候要先變字符串后變數(shù)字。
在排序的時候可以這樣做:
a<- rep(18:21,3) #18,19,20,21,18,19,20,21,18,19,20,21
a<- factor(a) #把a變成了因子,如果要調整順序,就需要以下代碼
aa<-factor(a, levels=c("21","18","19","20")) #輸出的levels就變成了21,18,19,20
4.數(shù)據(jù)結構
4.1 向量(vector,一維)# c(1,2,3) c("a","b","c")
4.2 矩陣(matrix,二維):數(shù)據(jù)類型必須一樣,如都是數(shù)字
a<- matrix(1:10,nrow=5,ncol=2) #5行2列
1 6
2 7
3 8
4 9
5 10
默認是先豎著排(byrow=FALSE),不夠時會從頭開始循環(huán),要注意進行GEO差異分析的時候要求的數(shù)據(jù)類型就是矩陣matrix
改變列名:colnames(a)<-c("a","b")
數(shù)據(jù)框(data.frame,二維):真正意義上的excel,里面啥類型都可以,一列一列創(chuàng)建
dim(a) 輸出3 3表示3行3列
names(a)輸出為列名,rownames為行名
4.3 數(shù)組(array,三維)
4.4 列表(list):包括以上所有,儲存不同長度的數(shù)據(jù)