我有 3 个非常大的文件,包含数千个观测值(file_1 = 6314 行,file_2 = 11020 行,file_3 = 2757 行(。我需要加入它们,所以我使用了 dplyr 包中的函数full_join()
。当我运行代码时,我收到此错误:Error: std::bad_alloc
,没有别的。
我该如何解决这个问题?
这是我的代码:
det = full_join(det1, det2, by = "collectioncode")
det = full_join(det, det3, by = "collectioncode")
我可能迟到了,但我在加入时遇到了类似的问题,这些问题不应该引起这些问题(因此我找到了这个线程(。 然后我注意到,默认情况下,dplyr 的连接与 NA 匹配,这使我的数据集达到了数百万。 我可以通过将na_matches设置为"从不"来解决我的问题,例如:
det = full_join(det1, det2, by = "collectioncode", na_matches="never")
希望这有帮助!