Проблема связана с дополнительными кавычками (обозначенными экранированными \"
в выводе str
) и начальными пробелами в COUNTYCD
файла Y.
Вы можете использовать gsub
длязамените кавычки и trimws
, чтобы обрезать дополнительные пробелы перед объединением.
Вот пример, основанный на ваших (слегка измененных) выборочных данных:
merge(df1, transform(df2, COUNTYCD = trimws(gsub("\"", "", COUNTYCD))), by = "COUNTYCD")
# COUNTYCD val_from_df1 val_from_df2
#1 46013 0.33615347 0.9586547
#2 46013 0.46372327 0.9586547
#3 46013 0.06058539 0.9586547
#4 46013 0.19743361 0.9586547
Пример данных
set.seed(2018)
df1 <- data.frame(
COUNTYCD = c("46013", "46013", "46013", "46013"),
val_from_df1 = runif(4))
df2 <- data.frame(
COUNTYCD = c(" \"01001\" ", " \"01003\" ", " \"01005\" ", " \"01007\" ", " \"46013\" "),
val_from_df2 = runif(5))