Мы можем сделать это без разделения или объединения
library(dplyr)
library(stringr)
df1 %>%
arrange(str_remove(County, ",.*"))
# County Population
#1 ACounty, Alabama 106242
#2 ACounty, Texas 242342
#3 BCounty, Alabama 362845
#4 BCounty, Texas 293729
данные
df1 <- structure(list(County = c("ACounty, Alabama", "BCounty, Alabama",
"ACounty, Texas", "BCounty, Texas"), Population = c(106242L,
362845L, 242342L, 293729L)), class = "data.frame", row.names = c(NA,
-4L))