小编int*_*ang的帖子

dplyr:按匹配给定条件的组逐组减去值

现在我正在使用“dplyr”来重构基于“base”的 R 脚本。

基本上,我想对 Gene 进行 group_by 并按组减去与给定条件匹配的组的值。在这种情况下,我想要 Gene == 'C' 的值,并从所有其他值中减去它们。

简化数据:

x <- data.frame('gene' = c('A','A','A','B','B','B','C','C','C'),
                'sample' = rep_len(c('wt','mut1','mut2'),3),
                'value' = c(32.3,31,30.5,25,25.3,22.1,20.5,21.2,19.8))

  gene sample value
1    A     wt  32.3
2    A   mut1  31.0
3    A   mut2  30.5
4    B     wt  25.0
5    B   mut1  25.3
6    B   mut2  22.1
7    C     wt  20.5
8    C   mut1  21.2
9    C   mut2  19.8
Run Code Online (Sandbox Code Playgroud)

期望的输出:

  gene sample value deltaC
1    A     wt  32.3   11.8
2    A   mut1  31.0    9.8
3    A …
Run Code Online (Sandbox Code Playgroud)

group-by r dplyr

3
推荐指数
1
解决办法
8838
查看次数

标签 统计

dplyr ×1

group-by ×1

r ×1