R數(shù)據(jù)結(jié)構(gòu)
向量
元素:數(shù)字或者字符串萍启,用chr表示
標(biāo)量:一個(gè)元素組成的變量
向量:多個(gè)元素組成的變量
變量賦值
-
x<- c(1,2,3)
#常用的向量寫(xiě)法,意為將x定義為由元素1毛肋,2,3組成的向量 -
x<- 1:10
#從1-10之間所有的整數(shù) -
x<- seq(1,10,by = 0.5)
#1-10之間每隔0.5取一個(gè)數(shù)(注意是逗號(hào)不是分號(hào)) -
x<- rep(1:3,times=2
) #1-3 重復(fù)2次
從向量中提取元素
- 根據(jù)元素位置
-
x[4]
#x第4個(gè)元素 -
x[-4]
#排除法,除了第4個(gè)元素之外剩余的元素 -
x[2:4]
#第2到4個(gè)元素 -
x[-(2:4)]
#除了第2-4個(gè)元素 -
x[c(1,5)]
#第1個(gè)和第5個(gè)元素
- 根據(jù)值
-
x[x==10]
#等于10的元素 -
x[x<0]
#小于0的元素 -
x[x %in% c(1,2,5)]
#存在于向量c(1,2徒溪,5)中的元素
數(shù)據(jù)框
讀取本地?cái)?shù)據(jù)
read.table(file = "dodo.txt",sep = "\t",header =T)
或者read.csv('dodo.txt')
(dodo.txt一定要放在工作目錄里)
如果是這樣的報(bào)錯(cuò),除了檢查要讀入的數(shù)據(jù)是否在工作目錄下拧篮,還要檢查文件名稱對(duì)不對(duì)词渤,用
dir()
#顯示工作目錄下的文件那我這里讀入數(shù)據(jù)報(bào)錯(cuò)就是我的文件名錯(cuò)了。
設(shè)置行名和列名
-
X<-read.csv('dodo.txt')
#在示例數(shù)據(jù)里有dodo.txt (注意這里的變量X是一個(gè)數(shù)據(jù)框) -
colnames(X)
#查看列名 -
rownames(X)
#查看行名,默認(rèn)值的行名就是行號(hào)串绩,1.2.3.4... -
colnames(X)[1]<-"bioplanet"
#左上角第一格為空村生,R會(huì)自動(dòng)補(bǔ)為x,用這個(gè)命令來(lái)修改 -
X<-read.csv(file = "huahua.txt",sep = " ",header =T,row.names=1)
#最后row.names的意思是第一列為行名
數(shù)據(jù)框的導(dǎo)出
write.table(X,file = "yu.txt",sep = ",",quote=F)
#分隔符改為逗號(hào)穿香,字符串不加雙引號(hào)(將數(shù)據(jù)框X導(dǎo)出為yu.txt)
變量的保存與重新加載
-
save.image(file="bioinfoplanet.RData")
#保存當(dāng)前所有變量 -
save(X,file="test.RData")
#保存其中一個(gè)變量 -
load("test.RData")
#再次使用RData時(shí)的加載命令
提取元素
-
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列
思維導(dǎo)圖