数据结构
今天学习的数据类型主要有向量(vector)和数据框(Data frame)。
向量
1.标量与向量区分:
元素:数字或者字符串(用chr表示)等
标量:1个元素组成的变量
向量:多个元素组成的变量
2.赋值:
eg:x<- 4 #x=4
3.从向量中提取元素
可以根据元素位置或值来提取。eg:
x[4] #提取x中第四个元素
x[-4]#除了第4个元素之外剩余的元素
x[2:4]#第2到4个元素
x[-(2:4)]#除了第2-4个元素
x[c(1,5)] #第1个和第5个元素
x[x==10]#等于10的元素
x[x<0]#小于0的元素
x[x %in% c(1,2,5)]#存在于向量c(1,2,5)中的元素
例子中的%in%:判断前面一个向量内的元素是否在后面一个向量中,返回布尔值。布尔值代表“真”和“假”两个状态。“真”用关键字true表示,“假”用关键字false表示
a <- c(1,3,13,1443,43,43,4,34,3,4,3)
b <- c(1,13,11,1313,434,1)
a %in% b
结果为:
[1] TRUE FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
a[a %in% b] #提取元素
结果为:
[1] 1 13
数据框
一定要将要用到的数据文件发到工作目录下!!!
X<-read.csv("文件名.txt")
可获得数据框。
若不明白某个函数的用法,可以使用命令? 函数名称
来获得右下角方框中help的帮助。
1.读取本地数据:
a<-read.table() #读取文件并赋值给a
sep #字段间隔符
header #当且仅当第一行包含比列数少一个字段时,header=true
2.设置行名和列名
先查看:colnames(X),rownames(X)
再设置:
colnames(X)[1]<-"bioplanet" #将左上角第一格改为bioplanet
X<-read.csv(file = "huahua.txt",sep = " ",header =T,row.names=1) #最后row.names的意思是修改第一列为行名
3.数据框的导出
write.table(X,file = "yu.txt",sep = ",",quote=F)#分隔符改为逗号
quote #字符串不加双引号(默认格式带由双引号)
4.变量的保存与重新加载
save.image(file="bioinfoplanet.RData") #保存当前所有变量
save(X,file="test.RData") #保存其中一个变量
load("test.RData") #再次使用RData时的加载命令
5.提取元素
- X[x,y] #提取第x行第y列的元素
- X[x,] #第x行
- X[,y] 和 - X[y] #第y列
- X[a:b] #第a列到第b列
- X[c(a,b)] #第a列和第b列
- X$列名 #也可以提取列,不过只能提取一列
脚本文件的后缀是.R。若要保存为脚本,则直接保存(save)即可;若要打开,则在R studio中打开即可。
如果save(X,file="test.RData")
这句代码如果报错X not found,那么原因可能是其中的大小写不统一,改成统一就可以啦。
数据类型