R语言常用函数整理(包括基本对象处理、字符处理、数学、统计函数)

Functions in R

处理数据对象的函数

  • length(object)
    • 显示对象中元素/成分的数量
  • dim(object)
    • 显示某个对象的维度
  • str()
    • 显示某个对象的结构
  • class()
    • 显示某个对象的类或类型
  • mode()
    • 显示某个对象的模式
  • names()
    • 显示某对象中各成分的名称
  • c(object, object, …)
    • 将对象合并入一个向量
  • cbind(object, object, …)
    • 按列合并对象
  • rbind(object, object, …)
    • 按行合并对象
  • head()
    • 列出数据框的前6行
  • tail()
    • 列出数据框的最后6行
  • ls()
    • 显示当前的对象列表
  • rm(object, object, …)
    • 删除一个或多个对象
    • 语句rm(list = ls())将删除当前工作环境中的几乎所有对象
  • newobject <- edit(object)
  • fix(object)

数学函数

  • abs(x)
    • 绝对值
  • sqrt(x)
    • 平方根
  • ceiling(x)
    • 不小于x的最小整数
  • floor(x)
    • 不大于x的最大整数
  • trunc(x)
    • 向0的方向截取的x中的整数部分
  • round(x, digits=n)
    • 将x四舍五入到n位小数
  • signif(x, digits=n)
    • 将x四舍五入到n位有效数字
    • 注意这里的有效数字包括整数位(要和round函数区分开)
  • cos(x)、sin(x)、tan(x)
    • 正弦、余弦、正切
  • acos(x)、asin(x)、atan(x)
    • 反余弦、反正先、反正切
  • cosh(x)、sinh(x)、tanh(x)
    • 双曲余弦、双曲正弦、双曲正切
  • acosh(x)、asinh(x)、atanh(x)
    • 反双曲余弦、反双曲正弦、反双曲正切
  • log(x, base=n)
    • 对x取以n为底的对数
    • log(10)返回值为2.3026
    • 方便起见
      • log(x)为自然对数
      • log10(x)为常用对数
  • exp(x)
    • 指数函数
    • exp(2.3026)返回值为10

统计函数

  • mean(x)
    • 平均值(期望值)
  • median(x)
    • 中位数
  • sd(x)
    • 标准差
  • var(x)
    • 方差
  • mad(x)
    • 绝对中位差
  • quantile(x, probs)
    • 分位数
    • 参数
      • x表示待求分位数的数值型向量(也就是原始数据)
      • probs为一个[0,1]之间的概率值组成的数值向量(例如probs=c(0.25,0.5,0.75)表示分别求出0.25,0.5,0.75分位数)
  • range(x)
    • 值域
    • 例如若x<-c(1,2,3,4),那么range(x)返回值为c(1,4)diff(range(x))返回值为3
  • sum(x)
    • 求和
  • diff(x, lag=n)
    • 滞后差分
    • lag用于指定滞后几项(lag默认为1)
  • min(x)
    • 最小值
  • max(x)
    • 最大值
  • scale(x, center=TRUE, scale=TRUE)
    • 默认为数据对象x按列进行均值为0、标准差为1的中心化(center=TRUE)或标准化(center=TRUE, scale=TRUE)
    • 要对每一列进行任意均值和标准差的标准化,可以mydata<-scale(data)*SD+M
      • 其中M是想要的均值
      • SD为想要的标准差
    • 在非数值型的列上用scale函数会报错
    • 如果要对指定列而不是整个数据框的所有列进行标准化,可以用$符号进行数据框列的选择

概率函数

  • 概率函数通常用来生成特征已知的模拟数据,以及在用户编写的统计函数中计算概率值
  • 概率函数中的第一个字母
    • d(density)
      • 密度函数
    • p(distribution function)
      • 分布函数
    • q(quantile function)
      • 分位数函数
    • r(random number)
      • 生成随机数(随机偏差)
  • beta
    • beta分布
  • binom
    • 二项分布
  • cauchy
    • 柯西分布
  • chisq
    • (非中心)卡方分布
  • exp
    • 指数分布
  • f
    • F分布
  • gamma
    • gamma分布
  • geom
    • 几何分布
  • hyper
    • 几何分布
  • lnorm
    • 对数正态分布
  • logis
    • Logistic分布
  • multinom
    • 多项分布
  • nbinom
    • 负二项分布
  • norm
    • 正态分布
    • 均值和标准差默认为0和1(标准正态分布)
    • 相关函数
      • dnorm(x)
      • pnorm(x)
      • qnorm(x)
      • rnorm(x)
  • pois
    • 泊松分布
  • signrank
    • Wilcoxon序号秩分布
  • t
    • T分布
  • unif
    • 均匀分布
  • weibull
    • Weibull分布
  • wilcox
    • Wilcoxon秩和分布

字符处理函数

  • nchar(x)
    • 计算x中的字符数量
  • substr(x, start, stop)
    • 提取或替换一个字符向量中的字串
    • 例如:
      • substr(x,2,4)返回"bcd"
      • substr(x,2,4) <- "22222"返回"a222ef"
  • sub(pattern, replacement, x, ignore.case=FALSE, fixed=FALSE)
    • 在x中搜索pattern,并用文本replacement替换
    • 若fixed=FALSE,则pattern为正则表达式,否则为文本字符串
  • strsplit(x, split, fixed=FALSE)
    • 在split处分割字符向量x中的元素
    • 若fixed=FLASE,则pattern是一个正则表达式,否则为一个文本字符串
  • paste(…, sep=“”)
    • 连接字符串,分隔符为sep
    • 例如:paste("x", 1:3, sep = "M")会返回c("xM1", "xM2", "xM3")
  • toupper(x)
    • 大写转换
  • tolower(x)
    • 小写转换

其他实用函数

  • seq(from, to, by)
    • 生成一个序列
  • rep(x, n)
    • 将x重复n次
  • cut(x, n)
    • 将连续型变量x分割为有n个水平的因子
    • 使用参数ordered_result = TRUE创建一个有序性银子
  • pretty(x, n)
    • 创建美观的分割点
    • 通过选取n+1个等间距的取整值,将一个连续型变量x分割为n个区间
    • 绘图中常用
  • cat( )
    • 链接对象并输出到屏幕上或文件中

参考资料:《R语言实战(第2版)》[美]Robert I. Kabacoff 著,王小宁 等 译