首页 > 代码库 > R 从零开始,简单API集合
R 从零开始,简单API集合
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)用来储存类别变量和有序变量,这种变量不能用来计算,只能用来分类和计数。例子:
4.数组和矩阵
R 从零开始,简单API集合