簡體   English   中英

如何根據 R 中的其他兩列來計算一列?

[英]How to count one column based on two other columns in R?

我有一個這樣的數據框:

ID  tr  tri
a   A   11
a   A   11
a   A   11
a   A   11
a   A   12
a   A   12
a   A   12
a   A   13
a   A   13
a   A   13
a   A   13
f   A   11
f   A   11
f   A   12
f   A   12
f   A   12
f   A   13
f   A   13
f   A   14
f   A   14
f   A   14
f   A   14
j   B   11
j   B   11
j   B   12
j   B   12
j   B   12
j   B   12
j   B   13
j   B   14
j   B   14
j   B   14
j   B   14
p   B   11
p   B   11
p   B   11
p   B   11
p   B   11
p   B   12
p   B   12
p   B   13
p   B   13
p   B   13
w   B   11
w   B   11
w   B   12
w   B   12
w   B   12
w   B   12
w   B   12
w   B   13
w   B   13
w   B   14

我需要知道每個tri中每個tr有多少個唯一ID ,如下所示:

tr  tri count
A   11  2
A   12  2
A   13  2
A   14  1
B   11  3
B   12  3
B   13  3
B   14  2

所以我的問題是如何根據其他兩列來計算一列? 我想我需要summarize function,但我不知道如何根據我的兩個專欄來做。 謝謝。

您需要將trtri組合在一起,然后使用summarizen_distinct來計算唯一ID

library(dplyr)

df %>% group_by(tr, tri) %>% summarize(count = n_distinct(ID), .groups = "drop")

# A tibble: 8 × 3
  tr      tri count
  <chr> <int> <int>
1 A        11     2
2 A        12     2
3 A        13     2
4 A        14     1
5 B        11     3
6 B        12     3
7 B        13     3
8 B        14     2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM