小Tips:
- R的赋值符号最好用<-
- 在控制台(实时命令区域)输入命令,回车即可运行
- R的代码所有符号必须用英文输入
- 显示工作路径命令
getwd()
- 向量由元素组成,元素可以是数字也可以是字符串
- 表格在R中成为数据框,是数据类型的一种
- 对于不会的函数可以使用 ?函数名 在控制台进行查询,如果一个函数是在多个包内都有同名,可以选择在函数名前加上包名,即 ?包名::函数名
- R中的数据类型:向量、矩阵、数组、数据框、列表。加粗的是重点掌握的数据类型
向量
- 向量与标量的区别相信学过数学或者物理的应该都不陌生,在R中没有方向的概念,但是有顺序的概念,所以区别就在于标量是一个元素的变量,不存在顺序,向量是多个元素的变量,有顺序区别。
-向量与标量的元素并没有限制,可以是数字也可以是字符串 - 与其他编程类语言相似,在命令行任意输入的字母作为一个变量,给变量一个值或一个字符串,叫作给变量赋值,赋的是标量;给变量几个有顺序的值或几个顺序的字符串,则赋的是向量
- 举个栗子
x<-c(1,2,3)#x为变量,赋值为由1,2,3组成的向量
x<-1:10#给x赋值,为1~10所有整数
x<-seq(1,10,by=0.5)#意为给x赋值为,1~10每隔0.5取一次的所有值
x<-rep(1:3,times=2)#x的值为1~3,重复两次
- 变量在工作区可以看到,但同名的变量会随着赋值的先后顺序被刷新(也就是说,你第一次给一个变量赋值后,第二次给同名变量赋另一个值,那你第一次赋的值就不见啦)
- 工作区域内的变量可以双击,然后就在左上区域代替编辑器出现啦 ,如果不想看就叉掉就好啦
- 如果我有一个向量a,它是一行4个数,现在我想要其中的第3个和第4个元素给x
x<-a[3:4]
x<-a[-(1:2)]
x<-a[c(3,4)]
x<-a[c(-1,-2)]
#如果知道值,第三个为3,第四个为9
x<-a[a==3]
x<-a[a %in% c(3,4)]#存在于向量a中3,4位置的元素
数据框
-
现在,我有两个文本文件
- 读取一个给X
X<-read.csv('doudou.txt')
- 再读取另一个给b
b<-read.table(file="huahua.txt",sep="\t",header=T)
- 看看X的列名和行名
colnames(X)
rownames(X)
- 有时候表格行名和列名交叉的第一个格子为空时,系统可能自己补充了x如果想更改
colnames(X)[1]<-"bioplanet"
- 行名在上面b赋值的结果是默认为自然数,如果想读入的时候默认第一列为行名
b<-read.csv(file="huahua.txt",sep="\t",header=T,row.names=1)
-
当然如果懒到极致,鼠标也是可以完成读入数据的事情
- 当一系列操作之后
- 数据框的导出
write.table(b,file="wan.txt",sep=",",quote=F)
- 以后还要直接用的变量,保存和加载
save.image(file="haiyong.RData")#保存了所有变量
save(b,fiile="b.RData")
load("b.RData")#加载进来
- 从数据框中提取元素和向量中提取元素的最大差别在于——一个逗号
b[2,3]#第2行第3列
b[2,]#第2行所有列,列也同理
b[2]#第2列,没有逗号默认为列
b$列名#名为列名的列
作业
save(X,file="test.RData")
报错没有找到X,应该是因为X不在变量列表中,或者可能只有小写x变量,没有大写X变量,大小写是不一样的