У меня есть датафрейм со строкой под названием «Страна».Когда страной происхождения являются Соединенные Штаты, записи указываются, например, как «Луизиана - США».В конце я пытаюсь избавиться от "- США", чтобы он только говорил, из какого штата он пришел.
Итак, у меня сейчас что-то подобное (хотя у меня тысячи записей):
df <- data.frame(ID = 1:4, Country = c("Louisiana - USA", "Canada","France", "Maine - USA"))
Я попробовал следующее:
for (i in 1:nrow(df)) {
df$USA[i] <- ifelse(grepl(" USA| États-Unis", df$Country[i]), 1, 0)
}
index_USA <- which(df$USA == 1)
for (int in index_USA) {
gsub(" - USA", "", df$Country[int])
}
Однако этот код не работает.Я также попытался использовать пакет stringr вместо gsub.Итак, я заменил последний цикл for на:
for (int in index_USA) {
str_replace_all(df$Country[int], " - USA", "")
}
Но это тоже не сработало.Я чувствую, что совершаю очевидную ошибку, но не могу понять (возможно, мне нужно использовать регулярное выражение?)