R的数据结构
向量
- 一个向量是一排有序排列的元素
-
元素指的是数字或者字符串(用chr表示)等,根据它可以区分两个词:
标量:一个元素组成的变量
向量:多个元素组成的变量(并且有顺序)
数据对应关系.png
R赋值用这个符号 <-
赋值给一个变量,如下
X <- 1 # 将元素1赋值给X
Y <- (1,2,3) #常用的向量写法,意为将x定义为由元素1,2,3组成的向量。
Y <- 1:10 #从1-10之间所有的整数
Y <- seq(1,10,by = 0.5) #1-10之间每隔0.5取一个数(注意是逗号不是分号,如果写成分好会报错的,如下图)
x <- rep(1:3,times=2) #1-3 #把元素1,2,3重复2次(前面的值一个标量或向量,不能写成以逗号分隔的多个标量或向量,这样只会重复第一个,如图下)
从向量中提取元素
-
按元素位置提取 (首先赋值给x)
根据元素位置提取
-
按数值提取
image.png
数据框
数据框可以理解为表格,优点是可以在不影响原始数据的基础上改变数据
- 读取本地文件
读取前需要将文件放在工作目录下,查看当前目录可以用getwd()
命令行及执行后结果.png - 设置行名列名
上图中A <-read.table("huahua.txt",sep="\t",header=T)
A变量已被赋值,变为一个数据框
rowname(A) #查看数据框A的行名
colname(A) #查看A的列名
colname(A) [1] <- "Bio" #若表格及数据框左上角第一行为空,则可以通过此命令来修改为Bio
A<-read.table(file = "huahua.txt",sep = "\t",header =T,row.names=1)
#最后row.names的表上第一列为行名,若第一列不作为行名则为默认值row.nams=0
命令执行结果.png
- 导出数据框
write.table(A,file="test.txt",sep = ",",quote=F)
#sep=","即分隔符改为逗号,quote=F字符串去掉双引号(默认格式带有双引号) )
- 变量保护与加载
#这次没有处理完的数据下次想接着用怎么办?--学会保存和重新加载。保存的格式是RData。
save.image(file="test.RData")#保存当前所有变量
save(X,file="test.RData")#保存其中一个变量
load("test.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自动补全,不过只能提取一列)
问题回答:
save(X,file="test.RData"),中出现报错‘object X not found',说明R环境中未找到X,可以查看X的书写是否有错,如大小写等
网友评论