R语言_split()函数用法

前言:
微博参与话题 #给你四年时间你也学不会生信#

Divide into Groups and Reassemble | 重新组合

函数split()可以按照分组因子,把向量,矩阵和数据框进行适当的分组。它的返回值是一个列表,代表分组变量每个水平的观测。这个列表可以使用sapply(),lappy()进行处理(apply – combine步骤),得到问题的最终结果。
只是分组,既可以对向量分组,也可以对数据框分组

Usage
split(x, f, drop = FALSE, ...)
## Default S3 method:
split(x, f, drop = FALSE, sep = ".", lex.order = FALSE, ...)

split(x, f, drop = FALSE, ...) <- value
unsplit(value, f, drop = FALSE)

Arguments | 参数

  • x: 一个待分组的向量或者data frame
  • f: 函数,一个factor或者list(如果list中元素交互作用于分组中),以此为规则将x分组
  • drop: 逻辑值,如果f中的某一个level没有用上则被弃用
  • value: 一个储存向量的list,其形式类似于分组完成之后返回的那个list

Example | 例子

> d <- data.frame(gender=c("M","M","F","M","F","F"),age=c(47,59,21,32,33,24),income=c(55000,88000,32450,76500,123000,45650), over25=rep(c(1,1,0), times=2))
> d
  gender age income over25
1      M  47  55000      1
2      M  59  88000      1
3      F  21  32450      0
4      M  32  76500      1
5      F  33 123000      1
6      F  24  45650      0
> split(d$income, list(d$gender,d$over25)) #将income按照gender、over25分组
$`F.0`
[1] 32450 45650
$M.0
numeric(0)
$F.1
[1] 123000
$M.1
[1] 55000 88000 76500

参考资料:

  1. R 学习笔记(5)-- 因子和表
  2. R中利用apply、tapply、lapply、sapply、mapply、table等函数进行分组统计

你可能感兴趣的:(R语言_split()函数用法)