按一列中的因子拆分/子集数据帧[重复]

这个问题在这里已经有答案了
基于因子级别将data.frame拆分为新的data.frames

(2个答案)

四年前关闭的

我的数据如下(例如):

ID速率状态
124al
235百万
346层
4 34铝
578百万
6 99佛罗里达州

数据:

结构(列表(ID=1:6,速率=c(24L,35L,46L,34L,78L,99L),
状态=结构(c(1L,3L,2L,1L,3L,2L),
.标签=c(“AL”、“FL”、“MN”),
class=“factor”)),
.Names=c(“ID”、“费率”、“状态”),
class=“data.frame”,row.names=c(NA,-6L))

我想按状态分割数据,我想得到3个数据集,如下所示:

数据集1
ID速率状态
124al
4 34铝
数据集2
ID速率状态
235百万
578百万
数据集3
ID速率状态
346层
6 99佛罗里达州

我应该使用什么功能

我正在考虑拆分或子集函数,但仍然没有线索

我们可以使用拆分

mylist<-拆分(df,df$状态)
迈利斯特
$AL
ID速率状态
1 1 24 AL
4 34铝
$FL
ID速率状态
4346楼
699层
百万美元
ID速率状态
235百万
578百万

要访问元素编号:

mylist[[1]]

或按姓名:

mylist$AL
ID速率状态
1 1 24 AL
4 34铝

?拆分

说明

split将向量x中的数据划分为f定义的组。
替换形式替换与这种划分相对应的值。
取消拆分会反转拆分的效果

发表评论