Этот код переупорядочивает слова в адресах в алфавитном порядке, поэтому вы можете проверить, совпадают ли два адреса.
library(stringr)
df = data.frame(address = c("CABOT ST AT RUGGLES ST", "RUGGLES ST AT CABOT ST"))
# split the address into words
list_split <- str_split(df$address,' ')
#[[1]]
#[1] "CABOT" "ST" "AT" "RUGGLES" "ST"
#[[2]]
#[1] "RUGGLES" "ST" "AT" "CABOT" "ST"
# sort the words
list_sort <- map(list_split, sort)
#[[1]]
#[1] "AT" "CABOT" "RUGGLES" "ST" "ST"
#[[2]]
#[1] "AT" "CABOT" "RUGGLES" "ST" "ST"
# paste all the words reordered together
list_pasted <- map(list_sort,function(x) paste(x,collapse= " "))
#[[1]]
#[1] "AT CABOT RUGGLES ST ST"
#[[2]]
# [1] "AT CABOT RUGGLES ST ST"
# unlist to convert to vector and assign to a new column
df$address_sorted <- unlist(list_pasted)
# address address_sorted
#1 CABOT ST AT RUGGLES ST AT CABOT RUGGLES ST ST
#2 RUGGLES ST AT CABOT ST AT CABOT RUGGLES ST ST
Если у вас есть два столбца адресов, вы можете сделать то же самое для другого столбца. и сравнить их вместе