我想否定选择(因子变量每个级别的给定行值以外的所有值),并总结剩余的数据。举一个简单的例子,我有一个带有两列的数据框DF。
>DF
Category Value
A 5
B 2
C 3
A 1
C 1
如果dplyr可以否定选择(可以吗?),它将看起来像这样。
> DF %>% group_by(!Category) %>% summarise(avg = mean(Value))
!Category avg
A 2.00 #average of all rows where category isn't A
B 2.50
C 2.67
最佳答案
这是您可以在基本R
中实现的方法:
编辑:感谢您提出可扩展的更改@Ryan
> sapply(levels(DF$Category), FUN = function(x) mean(subset(DF, Category != x)$Value))
A B C
2.000000 2.500000 2.666667
关于r - 否定选择数据框后如何在R中获得摘要统计信息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36140487/