首页 > 解决方案 > 如何在R中将数据帧切成多个数据帧

问题描述

我有以下问题:我有一个这种格式的大数据框:

在此处输入图像描述

这些测量值中的每一个都代表一个名称包含“:”正则表达式的整个单元格,随后是单元格内的点及其各自面积的面积测量值。

我想将其子集化为多个数据帧,其中仅包含从带有“:”的名称到下一个的部分。在此示例中,它将是从第 1 行到第 14 行,然后从第 15 行到下一个,在带有“:”的正则表达式之前。

标签: rdataframeslice

解决方案


我们可以通过使用和创建分组索引split来将数据集拆分为一个data.frame 。这里,第一个元素包括从 1 到 14 的行,从 15 到下一个之前的行,...list greplcumsumlist:

lst1 <- split(df1, cumsum(grepl(":", df1$Label)))

推荐阅读