數(shù)據(jù)結(jié)構(gòu)
一、向量
理解向量與標(biāo)量的區(qū)別,熟悉提取向量的方法,主要分為根據(jù)數(shù)據(jù)本身提取和根據(jù)位置提取2種
x<- rep(1:3,times=2)
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è)元素
x[x==10]#等于10的元素
x[x<0]
x[x %in% c(1,2,5)]#存在于向量c(1,2,5)中的元素
二、數(shù)據(jù)框
1.讀取
x<-read.csv('doudou.txt')讀取txt
read.table(file = "huahua.txt",sep = "\t",header = T)讀取txt,制表符分隔數(shù)據(jù),第一行有表頭,也可以用<-賦值方便后續(xù)使用。
2.行列名
查看行列名
rownames(x)
colnames(x)
修改第1列為行名
X<-read.csv(file = "huahua.txt",sep = " ",header =T,row.names=1)
3.導(dǎo)出
write.table()
4.變量保存與重新加載
save.image(file="bioinfoplanet.RData")#保存當(dāng)前所有變量
save(x,file="test.RData")#保存其中一個(gè)變量
load("test.RData")#再次使用RData時(shí)的加載命令
注意大小寫,若前方賦值為x,寫save(X,file="test.RData")報(bào)錯(cuò)是因?yàn)榇笮懖粚?duì),這也是今天的作業(yè)問(wèn)題~
5.直接使用數(shù)據(jù)框數(shù)據(jù)
options(stringsAsFactors = T)#字符換為因子
a <-data.frame(case=paste0("S",1:9),values=runif(9))#生成S1:S9,取值9個(gè)隨機(jī)數(shù)
plot(a$case,a$values)#數(shù)據(jù)框里取case和value兩列
with這個(gè)方法對(duì)我來(lái)說(shuō)有點(diǎn)不好理解呢...
with(a,{
plot(case,values)
x<<-summary(values) #求和并賦值給x,<<的意思是作為全局變量,也就是出了大括號(hào)仍有效。
})
x
今日小結(jié)

R數(shù)據(jù)結(jié)構(gòu)