
Day5 數(shù)據(jù)結(jié)構(gòu).png
1. 數(shù)據(jù)類型
向量(vector)、矩陣(Matrix)、數(shù)組(Array)、數(shù)據(jù)框(Data frame)、List
2.向量
2.1元素、標量、向量

元素、標量、向量.png
在實際使用時,一般會給變量定義,即“賦值”(<-),舉例如下:
x<- 1 # x=1
x<- c(1,2,3) # x為由1,2,3組成的向量
x<- 1:10 # 從1-10之間所有的整數(shù)
x<- seq(1,10,by = 2) # 從1到10,每隔2取一個數(shù)
x<- rep(1:3,times=2) # 從1到3之間的所有整數(shù),重復(fù)2遍
2.2 從向量中提取元素
方法1:根據(jù)元素位置
x<- seq(1,10,by = 2)
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=1] #x中等于1的元素
x[x<3] #x中小于的元素
x[x %in% c(1,2,5)] #存在于向量c(1,2,5)中的元素

image.png
3.數(shù)據(jù)框
3.1 準備工作
將相關(guān)文件放入工作目錄(read的時候默認從工作目錄里面讀?。?/p>
3.2 讀取本地數(shù)據(jù)
read.table(file = "huahua.txt",sep="\t",header =T)
a<-read.table(file = "huahua.txt",sep="\t",header =T)
3.3 設(shè)置行名和列名
X<-read.csv('doudou.txt') #X實質(zhì)上是一個數(shù)據(jù)框
colnames(X) #查看列名
rownames(X) #查看行名,默認值的行名就是行號,1.2.3.4...
colnames(X)[1]<-"bioplanet"#實際情況:左上角第一格常常為空,R會自動補為x,用該命令可修改第一列的名字
X<-read.csv(file = "huahua.txt",sep = " ",header =T,row.names=1)#最后row.names的意思是修改第一列為行名
3.4 數(shù)據(jù)框的導(dǎo)出
write.table(X,file = "yu.txt",sep = ",",quote=F)#分隔符改為逗號,字符串不加雙引號(默認格式帶由雙引號)
3.5 變量的保存與重新加載
#應(yīng)用場景:本次處理的數(shù)據(jù),后續(xù)想繼續(xù)使用
#保存格式:RData
save.image(file="bioinfoplanet.RData")#保存當(dāng)前所有變量,在這里指的是保存整個“bioinfoplanet.RData”文件
save(X,file="test.RData")#保存其中一個變量,這里的X指的是test.RData文件中的的一個變量
load("test.RData")#再次使用RData時的加載命令
3.6 提取元素
- 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列

image.png
3.7 直接使用數(shù)據(jù)框中的變量
plot(iris$Sepal.Length,iris$Sepal.Width) #iris是R語言的內(nèi)置數(shù)據(jù),可以直接使用。提取某兩列作散點圖:
On the way.