R需要对每个值按百分比对已排序列表进行子集化

时间:2018-09-19 16:17:37

标签: r dataframe subset

我有一个数据框,该数据框按第一个变量排序,如下所示:

Var1 ....

10
  10



  10
  11
  11 。 。

等等。

我想分为两个数据帧,第一个包含Var1 == 10行的前n%。然后,Var1 == 11行的前n%等,第二行包含每行的最后(100-n)%;两者仍按原始顺序排列。

如何在R中执行此操作? 谢谢...

1 个答案:

答案 0 :(得分:0)

使用iris数据集,您可以执行类似的操作

library("tidyverse")
N <- 10 #10 %
iris10 <- iris %>% group_by(Species) %>% slice(1:(N/ 100  * n()))

获取第一个数据集。然后

iris90 <- iris %>% group_by(Species) %>% slice(-(1:(N/ 100  * n())))

获得第二名。