2020-06-19
2020-06-19 本文已影响0人
大虾马
学习小组Day5笔记--马小林
1、新手指南
(1)向量是由元素组成的,元素可以是数字或者字符串。
(2)表格在R语言中改名叫数据框
(3)函数或者命令不明白时,可选择:①网站搜索②用?read.table调出对应的帮助文档,翻到example了解。
(4)数据类型有五种:向量(vector)矩阵(Matrix)数组(Array)数据框(Data frame)List,其中最重要的是向量和数据框
2、向量
基本概念
元素:数字或者字符串(使用字符串时必须要加引号)
标量:一个元素组成的变量
向量:多个元素组成的变量
几种赋值方法
赋值向量(最常用)
x<- c(1,3,4)
赋值一连串数字
x<- 1:20#赋值的为一连串的整数
赋值按间隔选取数字
x<- seq(1,10,by = 2)#1到10之间,每隔2取一次数
赋值多组重复数值
x<- req(1:4,times =4)#取1到4的整数,重复取四次
从向量中提取元素
有两种思路:(1)根据位置(2)根据大小
(1)根据位置
x[2]#取x中第二个元素
x[-3]#除了第三个之外的元素
x[1:6]#取x中第一到第六的元素
x[-(1:6)]#除了第一到第六之外的元素
x[c(1,3)]#取第一和第三个元素
(2)根据大小
x[x == 4]#等于4的元素
x[x > 3]#大于3的元素
x[x %in% c(1,4,7)]#在向量c(1,4,7)中的元素
2、数据框
读取本地数据
read.table()相关参数https://www.cnblogs.com/xianghang123/archive/2012/06/06/2538274.html
read.csv()则是专门读取csv格式文件的命令
a<- read.table(file = "huahua.txt",sep = "\t",header = T)#sep = "\t"设置分隔符为空白符,如空格,制表符,换行符;header分为T或者F,反映第一行是否有变量名
设置行名和列名
X<-read.csv("doudou.txt")
colnames(X)#查看列名
rownames(X)#查看行名
colnames(X)[1]#指定修改第一列第一格的内容,因为测序公司很多会让左上角第一格为空,R会自动补为x,这样可以修改
X<-read.csv(file = "huahua.txt",sep = " ",header =T,row.names=1)#最后row.names的意思是修改第一列为行名
数据框导出
write.table(X,file = "yu.txt",sep = ",",quote=F)#quote意思是指定包围字符型数据的字符,F表明字符串不加双引号,字符型数据是指不具有计算能力的数据
变量保存及加载
保存格式是RData
save.image(file="bioinfoplanet.RData")#保存当前所有变量
save(X,file="bioinfoplanet_1.RData")#保存其中一个变量
load("bioinfoplanet_1.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$列名#只能指定提取一列
使用数据框中的变量
提取其中两列做散点图
基础版(A、C为列名)
options(stringsAsFactors = T)
a <-data.frame(A=paste0("S",1:9),C=runif(9))
plot(a$A,a$C)
升级版1:attach
将数据框名添加到搜索环境中:attach(a)
attach(a)
plot(A,C)
将数据框从搜索环境中删除:detach(a)
缺点:在将两个及以上的数据框加入搜索环境时,如果列名有冲突会报错
升级版2:with
with(a,{
plot(A,C)
x<<-summary(C) #求和并赋值给x,<<的意思是作为全局变量,也就是出了大括号仍有效。
})
x #运行完后打印x
with()的意思是取a这个数据框中的数据
3、脚本的使用和保存
在RStudio中,左上角的界面为脚本窗口,可以复制所需要的代码后保存,脚本的后缀是R。
问题
save(X,file="test.RData")这句代码如果报错object X not found,是为什么,应该怎么解决?
答
说明不存在这个变量,应该检查变量名是否书写错误,或者变量是否已经被误删等。
4、思维导图
