今天的内容是数据类型的一些基本操作,主要是向量和数据框
以下内容来自微信公众号生信星球
数据类型
- 向量 (一维数据)
- 矩阵 (特殊的数据框,矩阵中都是同一类型元素)
- 数组
- 数据框 (超重要,相当于Excel表格,二维数据)
- 列表
向量
定义
- 有多个元素(数值或字符串[字符串要加引号])组成
元素提取
- 根据元素位置
x[4] #x第4个元素
x[-4]#排除法,除了第4个元素之外剩余的元素
x[2:4]#第2到4个元素
x[-(2:4)]#除了……
x[c(1,5)] #第1个和第5个元素
- 根据值的大小
x[x==10]#等于10的元素
x[x<0]
x[x %in% c(1,2,5)]#存在于向量c(1,2,5)中的元素
数据框
- 读取文件
read.table(file = "huahua.txt",sep = "\t",header =T) #读取文件,分隔符为Tab,有表头
a<-read.table(file = "huahua.txt",sep = "\t",header =T) #把这个数据框赋给一个变量a
a <- read.csv (file = "huahua.csv") # read.csv()函数超省事,不需要设定其他的东西
- 设置行名和列名
colnames(X) #查看列名
rownames(X) #查看行名,默认值的行名就是行号,1.2.3.4...
colnames(X)[1]<-"bioplanet"#有的公司返回数据,左上角第一格为空,R会自动补为x,用这个命令来修改
X<-read.csv(file = "huahua.txt",sep = "\t",header =T,row.names=1)#最后row.names的意思是修改第一列为行名
- 数据框的导出
write.table(X,file = "yu.txt",sep = ",",quote=F)#分隔符改为逗号,字符串不加双引号(默认格式带由双引号)
- 变量的保存与重新加载
save.image(file="bioinfoplanet.RData")#保存当前所有变量
save(frame1,file="frame1.RData")#保存其中一个变量
load("frame1.RData")#再次使用RData时的加载命令
- 提取元素 (因为数据框是二维的,所以不优秀的写法要加逗号)
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$列名 #也可以提取列(优秀写法,而且这个命令还优秀到不用写括号的地步,并且支持Tab自动补全哦,不过只能提取一列)