我正在使用 dplyr 1.0.6 和 R 4.1.0,我编写了 2 个函数,如下所示:
AllCustomersList <- loadAllCustomersData()
CouldJoinByNationalID <- matchCustomersByNationalCode(AllCustomersList = AllCustomersList)
loadAllCustomersData() 返回两个数据框的列表,然后 matchCustomersByNationalCode 尝试在这两个 data.frame 上执行 semi_join,如下所示:
matchCustomersByNationalCode <- function(AllCustomersList) {
FDCustomers <- AllCustomersList$FDCustomers
Customers <- AllCustomersList$Customers
semi_join(x = FDCustomers, y = Customers, by = c("NationalID" = "NationalCode"), na_matches = "never") %>%
pull(NationalID) %>%
return()
}
实际上,这只是 semi_join 命名的一个包装器。但它通过一个错误说:
错误:
x
并且y
必须共享同一个 src,设置copy
= TRUE(可能很慢)。
运行
rlang::last_error()
以查看错误发生的位置。
调用自:signal_abort(cnd)
有人可以帮忙吗?