R生信星球培训第四十八期

学习小组Day5-R数据结构

2020-03-31  本文已影响0人  Pingouin

数据结构

向量 vector
矩阵 matrix
数组 array
数据框 dataframe

Vector

向量由元素组成,元素 = 数字or字符串(chr)。

元素、向量、标量的关系图

赋值

x <- c(1,2,3) # 由元素1,2,3组成的向量
x <- 1:10 # 1-10的所有整数
x <- seq(1,10, by = 0.5) # 1-10每隔0.5取一个数
x <- rep(1:3, times=2) # 1-3重复2次

提取元素

根据元素位置:

x[2:4] # 第2-4个元素
x[-(2:4)] # 除了第2-4个元素
x[c(1,3)] # 第1和第3个元素

根据值:

x[x==1] # 等于1的值的元素
x[x<0]
x[x %in% c(1,2,3)] #存在于向量c(1,2,5)中的元素

Dataframe

读取数据

read.table(file= "",sep="\t",header = T) #\t 为Tab 水平制表

名称

colnames() 
rownames()
colnames(x)[1] <- "123" # 左上角第一个重命名
X <- read.csv(file = "exercise.txt", sep =  " ", header = T, row.names=1) # 第一列为行名

注意大小写Sensitive

导出

write.table(X, file = "xx.txt", sep = ",", quote = F) # 分隔符为逗号
# 字符串不加双引号,默认格式带双引号

变量保存与重新加载

保存格式 .RData

save.image(file="xxx.RData") # 保存当前所有变量
save(X,file="x.RData") # 保存X这个变量
load("xxx.RData") 

提取元素

data[x,y] # 第x行第y列
data[,y]
data[y] #第y列 同上
data[x:y] # 第x到第y列
data[c(x,y)] # 第x和第y列 与上面不同
data$colname #支持tab补齐 只能提取一列

直接使用数据框的变量

方法1:attach
attach(dataframe_name) #添加至搜索环境
plot(colname1,colname2) # 作图只需输入列名,不需要$
detach(a) # 做完图将a删除出搜索环境

注意:两个以上数据框列名有冲突,attach会报错

方法2:with
with(dataframe_name,{
   plot(colname1,colname2)
x <<- summary(colname2)# 求和并赋值给x, <<为全局变量,出大括号仍然有效
}) 

作业

save(X,file="test.RData")报错:x not found

原因:没有X这个变量,检查是否大小写出错

上一篇 下一篇

猜你喜欢

热点阅读