R语言笔记——分割数据框

Posted 生信客栈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了R语言笔记——分割数据框相关的知识,希望对你有一定的参考价值。




      本个专题将介绍R语言的一些基本技能和实用技巧。本教程说明了如何使用R编程拆分数据帧。





01

创建样本数据



> data <- read.table(text="X Y Z+ ID12 2012-06 566+ ID1 2012-06 10239+ ID6 2012-06 524+ ID12 2012-07 2360+ ID1 2012-07 13853+ ID6 2012-07 2352+ ID12 2012-08 3950+ ID1 2012-08 14738+ ID6 2012-08 4104",header=TRUE)


## X Y Z## 1 ID12 2012-06 566## 2 ID1 2012-06 10239## 3   ID6   2012-06  524## 4  ID12   2012-07  2360## 5 ID1 2012-07 13853## 6 ID6 2012-07 2352## 7 ID12 2012-08 3950## 8 ID1 2012-08 14738## 9 ID6 2012-08 4104


R语言笔记——分割数据框

分割数据框




> mydt2 = split(data, data$Y)


R语言笔记——分割数据框
R语言笔记——分割数据框

获取第一个列表元素




> mydt2[[1]]


## X Y Z## 1 ID12 2012-06 566## 2 ID1 2012-06 10239## 3 ID6 2012-06 524


或者


> mydt2[["2012-06"]]


## X Y Z## 1 ID12 2012-06 566## 2 ID1 2012-06 10239## 3 ID6 2012-06 524


> mydt2[["2012-07"]]


## X Y Z## 4 ID12 2012-07 2360## 5 ID1 2012-07 13853## 6 ID6 2012-07 2352


> mydt2[["2012-08"]]


##     X       Y     Z## 7 ID12 2012-08 3950## 8 ID1 2012-08 14738## 9 ID6 2012-08 4104



R语言笔记——分割数据框
R语言笔记——分割数据框

计算每个列表元素的均值




> sapply(mydt2 , function(x) mean(x$Z))


## 2012-06 2012-07 2012-08 ## 3776.333 6188.333 7597.333


R语言笔记——分割数据框

将列表拆分为多个数据框




> for(i in 1:length(mydt2)) {+ assign(paste0("t.", i), mydt2[[i]])





以上是关于R语言笔记——分割数据框的主要内容,如果未能解决你的问题,请参考以下文章

《R语言实战》自学笔记28-将函数应用于矩阵和数据框

《R语言实战》自学笔记5-数据框

《实习日记》| ​7月21日 R语言学习笔记——tidyr

R语言学习笔记(十六):构建分割点函数

R语言自学笔记-2内置数据集

R语言入门视频笔记--1