背景知識回顧:
1.R的代碼都是帶括號的义桂,括號必須是英文的。
2.表格在R語言中改名叫數(shù)據(jù)框_
3.?+命令或者函數(shù),調(diào)出對應的幫助文檔肾筐,翻到example部分研究一下。
4.數(shù)據(jù)類型:
(1)向量(vector)
(2)矩陣(Matrix)
(3)數(shù)組(Array)
(4)數(shù)據(jù)框(Data frame)
(5)List
以下開始正文部分:
part1:向量
1.標量和向量的區(qū)分:
元素指的是數(shù)字或者字符串等缸剪,根據(jù)它可以區(qū)分兩個詞:
標量:一個元素組成的變量
向量:多個元素組成的變量
例如:
x<-c(1,2,3) #常用的向量定義寫法吗铐,意為將x定義為由元素1,2杏节,3組成的向量唬渗。
x<-(1:10) #從1-10之間所有的整數(shù)
x<-seq(1,10,by = 0.5) #1-10之間每隔0.5取一個數(shù)(注意這里是逗號不是分號)
x<-rep(1:3,times=2) #1-3 重復2次
提示:后一次的賦值能覆蓋前一次,避免用常見名稱如pi賦值奋渔。
2.從向量中提取元素
(1)根據(jù)元素位置镊逝,例如:
x[4] #x第4個元素
x[-4]#排除法,除了第4個元素之外剩余的元素
x[2:4]#第2到4個元素
x[-(2:4)]#除了第2到4個元素
x[c(1,5)] #第1個和第5個元素
(2)根據(jù)值的大小
x[x==10]#等于10的元素 ==意思是等于
x[x<0]
x[x %in% c(1,2,5)]#存在于向量c(1嫉鲸,2蹋半,5)中的元素
Part2:數(shù)據(jù)框
按照教程例子,先在工作目錄下添加文檔doudou.txt充坑,里面內(nèi)容如下:
X1,X2
A,1
B,
C,
D,3
E,
(#NA空值可留空,不用輸入)
用以下命令即可讀取數(shù)據(jù)框:x<-read.csv('doudou.txt')#區(qū)分大小寫
(1)讀取本地數(shù)據(jù)
read.table(file = "doudou.txt",sep = "\t",header =T) #讀取文件染突,分隔符為Tab捻爷,有表頭
a<-read.table(file = "huahua.txt",sep = "\t",header =T)#把這個數(shù)據(jù)框賦給一個變量a
以上命令等同與a<-read.csv('doudou.txt')
(2)設置行名和列名
x<-read.csv('doudou.txt') #在示例數(shù)據(jù)里有doudou.txt 注意這里的變量x是一個數(shù)據(jù)框
colnames(x) #查看列名
rownames(x) #查看行名
colnames(x)[1]<-"bioplanet"#有的公司返回數(shù)據(jù),左上角第一格為空份企,R會自動補為x,用這個命令來修改
x<-read.csv(file = "doudou.txt",sep = "\t",header =T,row.names=1)#最后row.names的意思是修改第一列為行名
(3)數(shù)據(jù)框的導出
write.table(x,file = "new.txt",sep = ",",quote=F)#分隔符改為逗號也榄,字符串不加雙引號(默認格式帶由雙引號) #在工作路徑下會看到new.txt的新文件
(4)變量的保存與重新加載
保存的格式是RData。
save.image(file="bioinfoplanet.RData")#保存當前所有變量
save(frame1,file="frame1.RData")#保存其中一個變量司志,frame1修改成自己要保存的變量名稱
load("frame1.RData")#再次使用RData時的加載命令甜紫,frame1注意修改名稱
(5)提取元素
(#以下命令括號外x代表向量名稱,[ ]內(nèi)代表行列數(shù))
x[x,y]#第x行第y列
x[x,]#第x行
x[,y]#第y列(橫著寫骂远,這是不夠懶也不夠優(yōu)秀卻能存在的寫法)
x[y] #第y列(豎著寫囚霸,這是懶惰又優(yōu)秀的寫法)
x[a:b]#第a列到第b列
x[c(a,b)]#第a列和第b列
x$列名 #支持Tab自動補全哦,不過只能提取一列)
(6)【選修部分】直接使用數(shù)據(jù)框中的變量
提取某兩列作散點圖:
c <-data.frame(case=paste("S",c(1:50)),values=runif(50))
plot(c
values)(#這里的case和values是兩個單純的列名)
簡化辦法:
方法1:attach
將數(shù)據(jù)框名添加到搜索環(huán)境中:attach(c),作圖時就只需輸入列名
attach(c)
plot(case,values)
做完后將a刪除出搜索環(huán)境 detach(c)
方法2:with
with(c,{
-
plot(case,values)
x<<-summary(values) #求和并賦值給x,<<的意思是作為全局變量激才,y也就是出了with循環(huán)仍有效拓型。
})
x #運行完后打印x
附注:保存的腳本文件的格式是*.R
思維導圖:
第五天思維導圖.png