基本函数:
Search()浏览已加载包的名称
Library()查看包的功能说明
Library(help=)浏览指定包中的函数
Library(包名称)加载指定包到工作空间
Help.start()启动R的帮助文档
Help(函数名)
Help.search()浏览包含指定字符串的函数的帮助文档
Detach(package:包名称)从工作空间卸载指定包
Installpackages()安装包
old.packages()显示已下载安装且当前有新版本的包的目录,版本,网络镜像站点等信息
update.packages()更新包
new.packages()显示尚未安装的新包列表
RSiteSearch(‘相关词’)网站检索
getwd()获取当前工作目录
setwd()设置当前工作目录
source()运行指定程序
sink(“结果文件名”)控制台输出保存到指定结果文件
R数据对象,向量,矩阵,数组,数据框,列表
查看数据对象的结构:str(对象名)
管理数据对象ls()
删除工作空间对象rm(对象名或对象列表)
is.(Vector,Factor,Matrix,Array,List),判断
创建向量函数c
重复函数:rep(起始值:终止值,each=重复次数)排列重复,rep(起始值:终止值,time=重复次数)循环重复
序列:sep(from=,to=,by=/length=)
键盘输入scan()
创建指定长度的向量Vector(length=)
访问指定位置元素xx[c()],向量名[位置向量]
访问元素之外的元素xx[-c()]
矩阵操作
Cbind(向量名列表)按列组块,同理rbind()
dim(),colnames(矩阵名或矩阵指定列),rownames(矩阵名或矩阵指定列)
matrix(向量名,nrow=,ncol=,byrow=T/F,dimnames=list(行名表,列名表))
head(),tail()
fix()窗口编辑访问矩阵
数据框:
data.frame(域名n=向量n)
names(数据框名)显示各个域名
数据框$域名
attach(数据框名),detach(数据框名),绑定和解绑数据框(可直接引用域名)
with(数据框名,{域访问函数和操作
})({}内的对象均为局部对象)
修改数据框:
数据框名<- within(数据框名,{域访问函数和操作
})({}内的对象均为局部对象)
数组:
array(向量名,维度说明,dimnames=list(维名称列表))
访问数组:数组名[行号,列号,表号]
列表:
list(成分名n=对象名n)
names(列表名)显示成分名
访问列表:列表名$成分名
存储类型:
Is.存储类型名(数据对象)numeric,integer,double,character,logical
查看存储类型;typeof(数据对象)
类型转换:as.存储类型名(数据对象)
*类型转换会影响精度,逻辑型只能通过0,1转换
因子:
Levels(因子名),nlevels(因子名),分别取水平值和水平数
Factor(向量名,order=T/F,levels=c(类别列表值))
创建因子:gl(水平个数,水平出现次数)
数据管理:
读取文本到向量:scan(file=“文件名”,skip=行数,what=存储类型转换函数())
读取文本到数据框;read.table(file=“文件名”,header=T/F,sep=“数据分隔符”,stringAsFactors=T/F)读入是文本字符串自动转换因子,并按字母排序比较耗时
网页数据:
Library(“XML”)
URL <- 网址
数据 <- readHTMLTable(网址)
Str(数据)显示列表结构信息
网页内容被视为字符读入列表,列表成分均为因子
数据保存:
Write.table(数据对象,file=“文本文件名”,sep=‘分隔符’,quote=T/F(文本第一行及字符串数据是否用双引号括起来),append=T/F,na=‘NA’,row.names=T/F,colnames=T/F)
包分类:数学,统计,概率,字符串,数据管理,文件管理
整除%/%,求余数:%%包含:%in%
数学函数:
abs(),sqrt(),ceiling(),floor(),trunc(),round(x,digits=n),signif(x,digits=n),sin,cos,tan,log(x,base=n),log(),exp()
概率函数:
dnorm(x,mean=,sd=)密度值
pnorm(x,mena=,sd=)累计概率
dnorm(p,mean=,sd=)分位值
rnorm(x,mean=,sd=)生成随机数,set.seed(123)设置种子保证随机数重现
分布;
Bate,binom(),Cauchy(),chisq(),exp(),f(),gamma(),geom(),lnorm(),logis(),multinom()nbinom(),norm,posi,signrank(),t,unif(),weibull()
统计函数:
Mean(),median(),sd(),var(),range()取值范围,max(),length(0,min(),sum(),cumsum(),sumprod()cummax(),cumin()prod()
Quantile(x,probs)probs*(n-1)+1求x在probs的分位值
cut(x,n)将x分成n组
scale(x)x标准化处理,减去均值除以其标准差
diff(x,lag=n)x的n项差分
rank(x)x的秩,升序的顺序,同名次求平均
cor(x1,x2)
cov(x1,x2)
矩阵运算函数:
矩阵乘法;%*%
Diag(n)行列为n的单位阵
Diag(x)创建正对角元素取x向量的矩阵
Diag(x)访问矩阵x的正对角元素
t(x)矩阵x转置
solve(x)求逆矩阵
eigen(x)求特征值和特征向量
det()求行列式
lower/upper.tri(x,diag=T/F)取上下三角部分,包括或不包括正对角
outer(x,y,FUN=)计算外积指定运算符或函数名
字符串函数:
nchar(),substr(x,n,m)取x中n至m的字符串
grep(p,x)计算p出现在x的第几个元素中,p可以为正则表达式‘.’代表一个字符‘*’代表0或多个
gsub(p,a,x)将x中的p替换为a,p可以是正则
strsplit(x,s)以s为分隔符分割x
paste(x,y,sep=s)以s为分隔符连接x,y
toupper(),tolower()大小写转换
数据管理函数:
Unique(x)x为向量或者数据框
append(x,s,after=n)在x的第n个位置后插入s
sort(x,decreasing=FALSE)返回排列之后的结果
order(x,decreasing=FALSE)返回排序后的下标
rev(x)倒叙
which(条件表达式)返回满足条件的数值
which.min/max(x)返回最大最小值首次出现的位置
table(x)返回x的频数分布表
table(x1,x2)返回列联表
colSums(x)colMeans(x)计算矩阵或数据框的列合计和均值(数值型)行同理
lapply/sapply(x,FUN=函数名)数据框各列按指定函数计算
tapply(x,INDEX=a,FUN=函数名)按a分组对数据框x计算指定函数
aggregate(x,by=list(g1,g2),FUN=)按g1,g2交叉分组对数据框x计算指定函数
apply(x,MARGIN=1/2,FUN=)对数据框按行货列计算指定函数
merge(x1,x2,by=”关键字”)依据关键字合并数据框,并按关键字排序
subset(x,关系表达式)提取数据框x中关系表达式为真的数据子集
sample(x,size=n,prob=c(),replace=T/F)按入样概率在向量x中有放回或无放回的抽取n个样本
逻辑判断函数:
Is.na(x)判断向量x中是否有缺失值
Is.nan(x)
Complete.cases(x)判断数据框向量矩阵x观测值是否完整(不包含na,nan)
Is.unsorted(x)判断是否排序
Any(逻辑向量x)是否至少有一个元素取TRUE
X%in%y 判断向量x的元素是否在向量y中