今天是学习小组学习的第5天,主要是学习了解R语言的数据结构
1. 新手笔记
R语言赋值符号是<-
R代码带英文括号
函数getwd()获取工作路径
R语言的向量数据结构由元素构成,元素可以是数字或字符串
我们熟悉的表格在R语言的数据结构是数据框
?加上函数可以查看相关的帮助文档
R语言的常用数据类型: 向量、矩阵、数组、数据框和列表
其中向量和数据框是重点
2. 向量
a. 向量的定义和构建
标量是由一个元素组成的变量;而向量则由多个元素组成
使用向量一般给变量赋值;向量有以下四种创建方式
代码语言:txt复制x<- c(1,2,3) #最常用,c创建几个元素构成的向量
x<- 1:10 #:构建从1-10之间所有的整数
x<- seq(1,10,by = 0.5) #构建从1-10之间所有的整数,步长0.5
x<- rep(1:3,times=2) #重复两次1到3的整数
b. 从向量中提取元素
(1)根据元素位置
代码语言:txt复制x[4] #提取第4个元素
x[-4] #去除第4个元素
x[2:4] #提取第2到4个元素
x[-(2:4)] #去除第2-4个元素
x[c(1,5)] #提取第1个和第5个元素
(2) 根据逻辑值
代码语言:txt复制x[x==10] #提取等于10的元素
x[x<0] #提取小于0的元素
x[x %in% c(1,2,5)] #存在x中在向量c(1,2,5)中存在的元素
3. 数据框
tip:运行项目时需要将文件放置于工作目录下;R中严格区分大小写;改错变量可以重新赋值覆盖;可以使用并保存脚本文件,文件格式为R
a. 读取本地数据
代码语言:txt复制a <- read.table(file = 'huahua.txt', sep = 't',header = T) #read.table函数读取文件,sep表示分隔符,header指示文件是否包含变量的名称作为其第一行
b. 设置行名和列名
代码语言:txt复制colnames(X) #查看列名
rownames(X) #查看行名,默认值行名是行号
colnames(X)[1]<-"bioplanet" #如果左上角第一格为空,R会自动补为x,可以用这个命令来修改
X<-read.csv(file = "huahua.txt",sep = " ",header =T,row.names=1) #row.names的意思是第一列作为行名
c. 导出数据框
代码语言:txt复制write.table(X,file = "yu.txt",sep = ",",quote=F) #write.table导出,分隔符改为逗号,quote设置字符串不加双引号
d. 保存变量和重新加载
代码语言:txt复制#保存变量和重新加载可以让没有处理完的数据下次想接着用,保存格式时RData
save.image(file="bioinfoplanet.RData") #保存当前所有变量
save(X,file="test.RData") #保存其中一个变量
load("test.RData") #加载RData,导入保存的变量
e. 提取元素
代码语言:txt复制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补齐,但只能获取一列
f. 直接使用数据框变量
代码语言:txt复制plot(iris$Sepal.Length,iris$Sepal.Width) #iris是R中的一个内置数据集数据框,可以直接使用,提取其中两列作散点图
save(X,file="test.RData")如果代码报错object X not found,说明X不存在,R找不到这个对象,需要建立X这个变量给他赋值
代码示例来自微信公众号生信星球