在dplyr管道中按组拆分data.frame并仅保留与先前组的差异

时间:2017-08-10 02:59:36

标签: r split dplyr

假设我有一个data.frame:

set.seed(1984)
x <- 
   data.frame(
     num = rep(c(1,2,3,4,5), 5), 
     let = sample(letters[1:10], size = 25, replace = T), 
     LET = sample(LETTERS[1:10], size = 25, replace = T)) %>% 
   split(.$num)
x
$`1`
   num let LET
1    1   g   B
6    1   i   J
11   1   i   E
16   1   a   I
21   1   g   G

$`2`
   num let LET
2    2   e   I
7    2   a   D
12   2   a   F
17   2   c   C
22   2   a   I

$`3`
   num let LET
3    3   d   F
8    3   e   F
13   3   h   D
18   3   g   G
23   3   g   E

$`4`
   num let LET
4    4   d   F
9    4   i   H
14   4   h   A
19   4   j   D
24   4   i   E

$`5`
   num let LET
5    5   h   F
10   5   c   A
15   5   c   C
20   5   c   C
25   5   h   G

num是一天中的一小时。我希望仅基于(例如)x$2保留与x$1不同的子集LET。因此,此示例中的$2应该是包含LET B, C, D, E, F, G, J的单个向量; $3只是LET G, E, C

有什么建议吗?我真的很想在数据构建中给出的dplyr管道中做到这一点......

0 个答案:

没有答案