R 从零开始,简单API集合

时间:2022-06-22 00:52:48

1.简单的算数操作和向量运算

命令行启动 R,退出 q(). 可以在退出时保存项目进度,同目录下启动R时可以恢复进度.

获取函数帮助:help(solve) 或者 ?solve ,help.start() 启动html帮助

对于使用某个命令的例子,可以用example(topic)查看

R 大小写敏感, 命令可以被;隔开,可以使用({})构复合表达式,#开始到句尾为注释

如果一批命令保存在commands.R中,可以使用source("commands.R")执行

sink("log.txt")把输出导入到文件中,sink()把输出导回控制台

R创建和控制的实体被称为对象,对象通过名字创建和保存.ls()和objects()用来显示所有对象,rm(object)删除对象

赋值可以使用<-,=或二者->,或者用assign("x",c(1,2,3))来实现。 c()用来构建任意参数形成的向量

y=c(x,0,x)可以形成新向量。1/x可以显示出各个元素的倒数。在算数表达式中用向量会让每个元素都进行向量运算

+-*/ log(),exp(),sin(),cos(),tan(),sqrt(),max(),min(),mean(),sum(),var(计算方差),length().sort(升序)

seq(2,10)等价于2:10. seq有更多参数seq(from=a,to=b,by=c,length=d)参数顺序可变,by为步长.

rep可以重复对象 rep(c(1:3),times=2) 得到(1,2,3,1,2,3), rep(c(1:3),each=2)得到(1,1,2,2,3,3)

逻辑向量:TRUE, FALSE, NA。逻辑运算:<,<=,>,>=,==,!=. &交集运算与,|并集运算或,!非运算

任何含有NA数据的运算结果都是NA,is.na(x)返回一个和x长度相等的向量,x中为NA的位置为TRUE,其余为FALSE

NAN是缺损值如0/0,NA为不可得到值

paste()可以有任意多参数,把他们一个一个连成字符串,如paste(c("x","y"),1:6,sep="")得到("1x","2y","3x","4y","5x","6y")

一个向量的子集可以通过在[]中加入索引向量得到:

1.逻辑向量:此时索引向量需要和逻辑向量长度一致。x[!is.na(x)]取得所有非NA元素作为子集,(x+1)[(!is.na(x)) & x>0] 把x所有元素加1并生成一个不含NA和负数的子集

2.正整数向量。此时和索引向量对应的元素被选中,长度和索引向量一致,如x[1:10].索引向量长度可以比原向量长,如c("x","y")[rep(c(1,2,2,1),times=4)]会生成"x","y","y","x"重复四次的向量

3.负整数向量:指定元素排除,如(x[-(1:5)])排除1-5号元素

4.字符串向量:仅仅用于用name属性来标识元素。如: fruit=c(1,2,3,4);names(fruit)=c("a","b","c","d");num=fruit[c("a","b")]

向量是R里面最重要的,还有其他对象比如矩阵matrix,因子factor,列表list,数据框data frame,函数function.

2.对象以及他们的模式和属性

R中对象的类型包括数值型"numeric",复数型"complex",逻辑型"logical",字符型"character"和原味型"raw"。mode(object) 可以得到对象类型。as.character(z), as.integer(z)可以转换对象类型,class(object)看对象所属的类

使用length(alpha)=3 改变alpha的长度为3. e=numeric(),e为空对象,e[3]=10把e长度扩展为3,前两个元素为NA。

3.有序因子和无序因子

因子(factor)用来储存类别变量和有序变量,这种变量不能用来计算,,只能用来分类和计数。例子:

colour <- c(‘G‘, ‘G‘, ‘R‘, ‘Y‘, ‘G‘, ‘Y‘, ‘Y‘, ‘R‘, ‘Y‘)

col <- factor(colour)

col1 <- factor(colour, levels = c(‘G‘, ‘R‘, ‘Y‘), labels = c(‘Green‘, ‘Red‘, ‘Yellow‘)) #labels的内容替换colour相应位置对应levels的内容

col2 <- factor(colour, levels = c(‘G‘, ‘R‘, ‘Y‘), labels = c(‘1‘, ‘2‘, ‘3‘))

col_vec <- as.vector(col2) #转换成字符向量

col_num <- as.numeric(col2) #转换成数字向量

col3 <- factor(colour, levels = c(‘G‘, ‘R‘));col3 输出是在Y的地方为<NA>

 4.数组和矩阵

 

R 从零开始,简单API集合