4-5 R语言函数 split
语言 函数 split
2023-09-11 14:21:24 时间
#split根据因子或因子列表将 向量或其他对象分组
#通常与lapply一起使用
#split(参数):split(向量/列表/数据框,因子/因子列表)
> x <- c(rnorm(5),runif(5),rnorm(5,1))
> x
[1] 0.61008707 0.81746169 -1.09859969 -1.78134612 -1.94262725 0.99760581
[7] 0.37793960 0.05258653 0.38525197 0.46051864 -0.65455547 2.40130937
[13] 1.33670458 2.30777912 -1.34873009
> f <- gl(3,5)
> f
[1] 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3
Levels: 1 2 3
> split(x,f)
$`1`
[1] 0.6100871 0.8174617 -1.0985997 -1.7813461 -1.9426272
$`2`
[1] 0.99760581 0.37793960 0.05258653 0.38525197 0.46051864
$`3`
[1] -0.6545555 2.4013094 1.3367046 2.3077791 -1.3487301
> lapply(split(x,f),mean)
$`1`
[1] -0.6790049
$`2`
[1] 0.4547805
$`3`
[1] 0.8085015
> head(airquality)
Ozone Solar.R Wind Temp Month Day
1 41 190 7.4 67 5 1
2 36 118 8.0 72 5 2
3 12 149 12.6 74 5 3
4 18 313 11.5 62 5 4
5 NA NA 14.3 56 5 5
6 28 NA 14.9 66 5 6
> s <- split(airquality,airquality$Month)
> table(airquality$Month)
5 6 7 8 9
31 30 31 31 30
> lapply(s,function(x) colMeans(x[,c("Ozone","Wind","Temp")]))
$`5`
Ozone Wind Temp
NA 11.62258 65.54839
$`6`
Ozone Wind Temp
NA 10.26667 79.10000
$`7`
Ozone Wind Temp
NA 8.941935 83.903226
$`8`
Ozone Wind Temp
NA 8.793548 83.967742
$`9`
Ozone Wind Temp
NA 10.18 76.90
> sapply(s,function(x) colMeans(x[,c("Ozone","Wind","Temp")]))
5 6 7 8 9
Ozone NA NA NA NA NA
Wind 11.62258 10.26667 8.941935 8.793548 10.18
Temp 65.54839 79.10000 83.903226 83.967742 76.90
> sapply(s,function(x) colMeans(x[,c("Ozone","Wind","Temp")],na.rm = TRUE))
5 6 7 8 9
Ozone 23.61538 29.44444 59.115385 59.961538 31.44828
Wind 11.62258 10.26667 8.941935 8.793548 10.18000
Temp 65.54839 79.10000 83.903226 83.967742 76.90000
相关文章
- yaml语言在线可视化翻译
- R语言CSV文件
- 为什么Lisp语言如此先进?(译文)
- Atitit 编程语言的block概念 目录 1. 匿名block 1 1.1. 函数块 方法快 1 1.2. Sp udf块 1 2. 实现block的方式 1 2.1. 早期的语言大多是采用en
- Atiitt 使用java语言编写sql函数或存储过程
- Atitti 跨语言异常的转换抛出 java js
- atitit.跨语言执行cmd cli api的原理及兼容性设计草案
- VB.net:VB.net编程语言学习之基于VS软件利用VB.net语言实现对SolidWorks进行二次开发的案例应用(启动SolidWorks代码/直接驱动模型代码/路径下模型驱动代码/创建两个文
- Python语言学习:Python语言学习之函数(定义&调用函数/常用内置函数如filter&map/内嵌函数/闭包/匿名函数如lambda&map)的简介、案例应用之详细攻略
- Python语言学习:Python语言学习之正则表达式常用函数之re.search方法【输出仅一个匹配结果(内容+位置)】、re.findall方法【输出所有匹配结果(内容)】案例集合之详细攻略
- Python语言学习之字母D开头函数使用集锦:del、dict使用方法之详细攻略
- 我的Go+语言初体验——【三、spx案例测试_许式伟先生推荐补充(附-视频)】
- AOS编排语言系列教程(五):创建安全组SecurityGroup
- Go语言函数之可变参数
- 1318. 或运算的最小翻转次数-c语言函数实现
- 重排链表-c语言链表法解决
- Go语言精进之路自学系列 | 让自己习惯于函数是“一等公民”
- Go语言自学系列 | golang结构体作为函数参数
- Go语言自学系列 | golang函数的参数
- 387集Go语言核心编程培训视频教材整理 | 数组和切片(三)
- 387集Go语言核心编程培训视频教材整理 | 函数、包和错误处理(四)
- 387集Go语言核心编程培训视频教材整理 | 函数、包和错误处理(三)
- c语言文件介绍,打开和关闭操作
- go语言第七章(文件流)
- go语言中func后、函数名前的参数作用
- Android系统信息获取 之四:系统语言信息获取