一些零碎的知识点
- R的赋值符号是 <-
- 在Console控制台输入命令,相当于Linux的命令行
- R的代码都是带括号的,括号必须是英文的
- 显示工作路径 getwd()
- 向量是由元素组成的,元素可以是数字或者字符串
- 表格在R语言中改名叫数据框
- 使用代码要理解其中的命令、函数的意思(函数或者命令不会用时,出了百度/谷歌素搜索以外,还可以用
?read.table
,调出对应的帮助文档,翻到example部分研究一下) - 数据类型有
向量(vector) 矩阵(matrix) 数组(array) 数据框(data frame) List
向量
元素:指的是数字或者字符串(chr)等;
标量:一个元素组成的变量
向量:多个元素组成的变量
一个向量是一排有序排列的元素,以后会用到把一个向量作为数据框中的一列的情况。
使用时,一般会给变量赋值(数值、字符串、数据框等等)
x<- c(1,2,3) #常用的向量写法,意为将x定义为由元素1,2,3组成的向量
x<- 1:10 #从-10之间所有的整数
x<- seq(1,10,by = 0.5) #1-10之间每隔0.5取一个数(注意是逗号不是分号)
x<- rep(1:3,times=2) #1-3 重复2次
从向量中提取元素
(1)根据元素位置
x[4] #x第4个元素
x[-4] #排除法,除了第4个元素之外剩余的元素
x[2:4] #第2到4个元素
x[-(2:4)] #除了第2-4个元素的剩余 元素
x[c(1,5)] #第1个和第5个元素
(2)根据值
x[x==10] #等于10的元素
x[x<10]
x[x %in% c(1,2,5)] #存在于向量c(1,2,5)中的元素
数据框
sep
指定字符的分隔符号
the field separator character. Values on each line of the file are separated by this character. If sep = "" (the default for read.table) the separator is ‘white space’, that is one or more spaces, tabs, newlines or carriage returns.
header
首行,header = T
即首行用作名称,否则为 header = F
a logical value indicating whether the file contains the names of the variables as its first line. If missing, the value is determined from the file format: header is set to TRUE if and only if the first row contains one fewer field than the number of columns.
colnames(X)
查看列名
rownames(X)
查看行名,默认值的行名就是行号,1,2,3,4……
colnames(X)[1]<-"bioplanet"
有的公司返回数据,左上角第一格为空,R会自动补为x,用这个命令来修改
X<- read.csv(file = "huahua.txt",sep="",header=T,row.name=1)
最后row.names的意思是修改第一列为行名
write.table(X,file="yu.txt",sep="",quote=F)
数据框的导出
save.image(file="bioinfoplanet.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自动补全
with 把数据框或列表作为环境,可调用其中的对象
with(a,{
plot(case,values)
x<<-summary(values)
}) #求和并赋值给x,<<的意思是作为全局变量,也就是出了大于号仍有效
save(X,file="test.RData")
保存文件X,命名为test,文件后缀为RData