首页 > 解决方案 > 加入和合并仅在 R 中部分和完全工作

问题描述

我正在使用从全局环境中获取并加载到 R 中的数据集。它已保存为 CSV,并且正在 R 中作为来自该 CSV 的数据框读取。该数据集 ( survey_df) 有近 300 万个条目,我正在尝试基于列 ID(重复多次,因为每个 id 有多个条目)将这个数据集加入到最初是 shapefile 并且现在作为数据帧加载到 R 中的数据集shapefile_df. 该数据框有 60,000 个唯一条目,每个条目代表一个国家/地区的几何。在大多数情况下,我们希望每个几何有很多条目。我正在使用一个简单的 left_join 理论上应该将这两个数据集连接在一起。我遇到了一个问题,他们没有完全结合在一起,只有一些条目。我已经尝试过内部、完全和正确的加入以及合并,但我一直遇到同样的问题。我做了一个 full_join 和 id 列的副本来比较那些没有加入的列,我没有看到任何模式。他们似乎是同一个 id,由于某种原因他们没有加入。我尝试格式化它们as.characteras.factor但没有。下面我粘贴了一个加入/未加入 df 的示例。

匹配的 ID

| survey_df_id | survey_id_copy | shapefile_df_id
-------------- | --------------  |--------------
0901200010229  | 0901200010229   | 0901200010229
0901500010729  | 0901500010729   | 0901500010729
090050001087A  | 090050001087A   | 090050001087A
0900600010467  | 0900600010467   | 0900600010467
0901400010897  | 0901400010897   | 0901400010897
0901200011960  | 0901200011960   | 0901200011960

不匹配的 ID

| survey_df_id | survey_id_copy | shapefile_df_id
-------------- | -------------- |--------------
01903900010480 | 01903900010480 | NA
070470001010A  | NA             | 070470001010A 
0704700010117  | NA             | 0704700010117 
0704700010140  | NA             | 0704700010140 
0705200010672  | NA             | 0705200010672
0705200010742  | NA             | 0705200010742

大多数不匹配的条目就像shapefile_df_id是 NA 的第一行。但是,有一些地方survey_id_copy是 NA。这个领域只是一个领域mutatesurvey_df_id理论上应该没有任何不同,但它们是。知道是什么原因造成的吗?我怀疑这是一个格式问题,但正如所说,使用as.并没有解决这个问题。我正在使用 tidyverse 和 read.csv。有什么帮助吗?

标签: r

解决方案


推荐阅读