Очищаю набор данных. Одна из трудностей заключается в том, что в некоторых строках имена борцов объединены с названиями борцовских компаний без пробелов.
Date Match
2001-06-16 American Dragon Defeats Jerry LynnMCW
1943-10-07 Lou Thesz Defeats Jack McDonaldGAC
1955-03-25 Buddy Rogers Defeats Danny McShain
Чтобы исправить это, я использую следующую строку, чтобы удалить название компании, избавившись от заглавной буквы буква и все, что следует за ней, если эта заглавная буква следует за строчной буквой:
data_set_2 <- data_set %>%
mutate(match = str_remove(match, "(?<=[:lower:])[:upper:].*"))
Однако в случае имен с несколькими заглавными буквами, таких как McDonald, результат выглядит следующим образом:
date match
2001-06-16 American Dragon Defeats Jerry Lynn
1943-10-07 Lou Thesz Defeats Jack Mc
1955-03-25 Buddy Rogers Defeats Danny Mc
Чтобы исправить это, я попытался сделать так, чтобы в именах была только одна заглавная буква, пытаясь уменьшить заглавную букву после Mc
:
data_set_2 <- data_set %>%
mutate(match = str_to_title(match, "(?<=Mc)[:upper:]"))
Однако ниже результат:
Date Match
2001-06-16 American Dragon Defeats Jerry Lynnmcw
1943-10-07 Lou Thesz Defeats Jack Mcdonaldgac
1955-03-25 Buddy Rogers Defeats Danny Mcshain
Как видите, он понижает все, а не изолирует нижнее только до одной буквы. Я пытаюсь придумать способ изолировать одного персонажа, но ничего из того, что я пробовал, не помогло. Любые идеи приветствуются. Спасибо!