计算R中数据帧两列中每个组的唯一值

时间:2020-09-03 17:55:53

标签: r dplyr

我有一个看起来像这样的数据框:

enter image description here

我想计算每个microRNA分配给它多少个不同的靶标。 到目前为止,我已经在R上尝试过此操作,但是它不起作用,我也不知道为什么

DT %>%
    group_by(miRNA) %>%
    length(unique((Target)))

我想得到这样的结果:

enter image description here

我可以使用其他功能(例如聚合)来实现此目的,但我只是不理解在此特定示例中我的语法出了什么问题。 任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

建立数据集并添加我的评论作为答案。

DT <- tibble(miRNA = c("miR-10", "miR-10", "miR-10", "miR-3", "mir-7", "mir-7", "miR-22", "miR-22", "miR-22"),
             Target = c("A", "A", "B", "C", "C", "C", "A", "A", "B"))

DT %>% 
  group_by(miRNA) %>% 
  summarise(Target = n_distinct(Target))