R 对另一数据帧中与索引匹配的行进行计数

R 对另一数据帧中与索引匹配的行进行计数,r,R,我有两个数据帧 第一个描述了一组家庭: #df1 street house etc 1 1 ... 1 2 ... 2 1 ... 2 2 ... 2 3 ... 3 1 ... 第二个描述了住在这些房子里的个人 #df2 street house person etc 1

我有两个数据帧

第一个描述了一组家庭:

#df1
street   house     etc
     1       1     ...
     1       2     ...
     2       1     ...
     2       2     ...
     2       3     ... 
     3       1     ...
第二个描述了住在这些房子里的个人

#df2
street   house   person     etc
     1       1        1     ...
     1       1        2     ...
     1       2        1     ...
     1       2        2     ...
     1       2        3     ...
     3       1        1     ...

我想在df1中添加一个名为“member_count”的新列,并用df2中匹配“street”和“house”的行数填充该列。用base R实现这一点最可读的方法是什么?

在base R中,也许最简单的方法是

df1$membercount <- mapply(function(s,h) nrow(df2[df2$street==s & df2$house==h,]),
                           df1$street,df1$house)

df1
  street house membercount
1      1     1           2
2      1     2           3
3      2     1           0
4      2     2           0
5      2     3           0
6      3     1           1

df1$membercount在base R中,也许最简单的方法是

df1$membercount <- mapply(function(s,h) nrow(df2[df2$street==s & df2$house==h,]),
                           df1$street,df1$house)

df1
  street house membercount
1      1     1           2
2      1     2           3
3      2     1           0
4      2     2           0
5      2     3           0
6      3     1           1
df1$membercount
tmpdf
tmpdf
library(dplyr);df1=df1%>%左加入(df2%>%组员(街道、房屋)%>%总结(会员人数=n()),组员=c(“街道”、“房屋”)
图书馆(dplyr);df1=df1%>%左加入(df2%>%组由(街道、房屋)%>%总结(成员计数=n()),由=c(“街道”、“房屋”))