У меня есть база данных с несколькими повторяющимися записями, которые сообщают (непоследовательно) дополнительную информацию. Я хотел бы избавиться от информации и сохранить самую простую версию для каждой записи.
db <- data.frame(company=c("ENTRY_X","ENTRY_X COUNTY_1","COUNTY_2 ENTRY_X","ENTRY_Y"))
db_desiderata <- data.frame(company=c(rep("ENTRY_X",3),"ENTRY_Y"))
Записи, возможно, представляют собой длинные строки (некоторые с пробелами). Вот несколько примеров: «General Motors Company» и «General Motors». Мне удается изолировать все записи, которые необходимо заменить их подстрокой (включая db $). Я планирую запустить его рекурсивно.
Попытка кода (все работает, я не могу понять, что делать дальше):
db$included <- lapply(db$company, function(x) c(grep(x,db$company,value=T)))
db$lenght <- lapply(db$included, function(x) length(unlist(x)))
db$included <- ifelse(db$lenght==1,NA,db$included)