Day5-數(shù)據(jù)結(jié)構(gòu)
R語言中的幫助功能
在有疑問的指令前面輸入?
即可
如:?read.table
向量
元素
元素:數(shù)字或字符串(chr)
標量和向量
標量:一個元素組成的變量
向量:多個元素組成的變量
向量的賦值
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次
查看變量
右上角Enviroment欄
點擊變量名或用
View(函數(shù)名)
指令可查看詳細信息提取向量中的元素
x[4] #x第4個元素
x[-4] #除了第4個元素之外的元素
x[2:4] #第2到4個元素
x[-(2:4)] #除了第2-4個元素之外的元素
x[c(1,5)] #第1個和第5個元素
x[x==10] #x中等于10的元素
x[x<0] #x中小于0的元素
x[x %in% c(1,2,5)] #x中存在于向量c(1茅特,2忘分,5)中的元素
數(shù)據(jù)框
讀取本地數(shù)據(jù)
read.table(file = ".txt", sep = "\t", header =T)
注:
seq 參數(shù):用來指定字符的分隔符號,csv 文件是用逗號分隔的白修,故而 sep = ","妒峦;tsv 文件是用制表符分隔的,故而 sep = "\t"兵睛;常用的分隔符還有空格 sep = " "肯骇。分隔符是任意的,可根據(jù)具體情況指定的
header 參數(shù):true則表格第一行用于列名稱祖很,具體數(shù)據(jù)從第二行開始笛丙;false則第一行即為具體數(shù)據(jù)
設置行名和列名
X<-read.csv('.txt') #賦值數(shù)據(jù)框
colnames(X) #查看列名
rownames(X) #查看行名,默認值的行名就是行號
colnames(X)[1]<-"names" #如果左上角第一格為空,R會自動補為x突琳,可以用這個命令來修改
X<-read.csv(file = ".txt",sep = " ",header =T,row.names=1) #最后row.names的意思是修改第一列為行名
數(shù)據(jù)框的導出
write.table(X,file = "yu.txt",sep = ",",quote=F) #分隔符改為逗號若债,quote=F表示字符串不加雙引號(默認格式帶由雙引號)
變量的保存與重新加載
save.image(file="bioinfoplanet.RData") #保存當前所有變量為一個RData文件
save(X,file="test.RData") #保存某個變量
load("test.RData") #再次使用RData時的加載命令
提取數(shù)據(jù)框中的元素
X[x,y] #第x行第y列
X[x,] #第x行
X[,y] #第y列
X[y] #也是第y列
X[a:b] #第a列到第b列
X[c(a,b)] #第a列和第b列
X$列名 #也可以提取列(只能提取一列)
直接使用數(shù)據(jù)框中的變量
例:
a <-data.frame(case=paste0("S",1:9),values=runif(9))
plot(a$case,a$values)
使用提取指令可以直接使用數(shù)據(jù)框中的變量
腳本的保存
將代碼復制到腳本框的新建文件中,點保存即可保存為R文件
作業(yè):
save(X,file="test.RData")如果報錯object X not found拆融,是為什么蠢琳,應該怎么解決?
是因為沒有定義X這個變量镜豹,如果用<-給X賦值了就可以保存傲须,注意區(qū)分大小寫