R 检查多个数据集中是否存在值

R 检查多个数据集中是否存在值,r,R,我有许多表,表中的所有“a”列必须具有相同的值,以便进行分析。实际的表非常大,因此我将使用简化(模拟)数据帧 假设我有以下数据: A <- data.frame(a = c(3,4,5,6,7,8), b = c(4,5,6,7,8,9), c = c(5,6,7,8,9,10)) B <- data.frame(a = c(2,3,4,5,6,7), b = c(4,5,6,7,8,9), c = c(5,6,7,8,9,10)) C <- data.frame(a =

我有许多表,表中的所有“a”列必须具有相同的值,以便进行分析。实际的表非常大,因此我将使用简化(模拟)数据帧

假设我有以下数据:

A <- data.frame(a = c(3,4,5,6,7,8), b = c(4,5,6,7,8,9), c = c(5,6,7,8,9,10))

B <- data.frame(a = c(2,3,4,5,6,7), b = c(4,5,6,7,8,9), c = c(5,6,7,8,9,10))

C <- data.frame(a = c(1,2,3,4,5,6), b = c(4,5,6,7,8,9), c = c(5,6,7,8,9,10))

D <- data.frame(a = c(4,5,6,7,8,9), b = c(4,5,6,7,8,9), c = c(5,6,7,8,9,10))

A一个
dplyr
选项可以是:

bind_rows(list(A, B, C, D), .id = "ID") %>%
 mutate(n_datasets = max(ID)) %>%
 group_by(a) %>%
 filter(n_distinct(ID) == n_datasets)

   ID        a     b     c n_datasets
   <chr> <dbl> <dbl> <dbl> <chr>     
 1 1         4     5     6 4         
 2 1         5     6     7 4         
 3 1         6     7     8 4         
 4 2         4     6     7 4         
 5 2         5     7     8 4         
 6 2         6     8     9 4         
 7 3         4     7     8 4         
 8 3         5     8     9 4         
 9 3         6     9    10 4         
10 4         4     4     5 4         
11 4         5     5     6 4         
12 4         6     6     7 4  
bind_行(列表(A、B、C、D),.id=“id”)%>%
变异(n_数据集=max(ID))%>%
组别(a)%>%
过滤器(n个不同的(ID)=n个数据集)
ID a b c n_数据集
1 1         4     5     6 4         
2 1         5     6     7 4         
3 1         6     7     8 4         
4 2         4     6     7 4         
5 2         5     7     8 4         
6 2         6     8     9 4         
7 3         4     7     8 4         
8 3         5     8     9 4         
9 3         6     9    10 4         
10 4         4     4     5 4         
11 4         5     5     6 4         
12 4         6     6     7 4  

一个
dplyr
选项可以是:

bind_rows(list(A, B, C, D), .id = "ID") %>%
 mutate(n_datasets = max(ID)) %>%
 group_by(a) %>%
 filter(n_distinct(ID) == n_datasets)

   ID        a     b     c n_datasets
   <chr> <dbl> <dbl> <dbl> <chr>     
 1 1         4     5     6 4         
 2 1         5     6     7 4         
 3 1         6     7     8 4         
 4 2         4     6     7 4         
 5 2         5     7     8 4         
 6 2         6     8     9 4         
 7 3         4     7     8 4         
 8 3         5     8     9 4         
 9 3         6     9    10 4         
10 4         4     4     5 4         
11 4         5     5     6 4         
12 4         6     6     7 4  
bind_行(列表(A、B、C、D),.id=“id”)%>%
变异(n_数据集=max(ID))%>%
组别(a)%>%
过滤器(n个不同的(ID)=n个数据集)
ID a b c n_数据集
1 1         4     5     6 4         
2 1         5     6     7 4         
3 1         6     7     8 4         
4 2         4     6     7 4         
5 2         5     7     8 4         
6 2         6     8     9 4         
7 3         4     7     8 4         
8 3         5     8     9 4         
9 3         6     9    10 4         
10 4         4     4     5 4         
11 4         5     5     6 4         
12 4         6     6     7 4