【发布时间】:2018-08-25 07:59:24
【问题描述】:
我在 R 中有下表:
Sample Cluster CellType Condition Genotype Lane
Sample1 1 A Mut XXXX 1
Sample2 2 B Mut YYYY 1
Sample3 2 A Mut YYYY 2
Sample4 1 A Mut ZZZZ 1
Sample5 2 B Mut YYYY 3
Sample6 1 B Mut YYYY 1
Sample7 1 A Mut XXXX 2
我想:
- 按簇列聚合表,
- 每个其他列产生与集群相关的主导值
- 以及“置信度”,表示与同一集群相关的值的优势百分比
像这样:
Cluster CellType Condition Genotype Lane
1 A (75%) Mut (100%) XXXX (50%) 1 (75%)
2 B (66%) Mut (100%) YYYY (100%) 1 (33%)
我尝试使用聚合函数如下,它产生了接近的结果,但它还没有完全实现:
Mode <- function(x) {
ux <- unique(x)
ux[which.max(tabulate(match(x, ux)))]
}
library(dplyr)
aggregate(. ~ Cluster, clustering_report, Mode)
【问题讨论】:
标签: r dplyr aggregation