У меня есть фрейм данных, пара столбцов со случайными данными, которые я не хочу использовать, и 10 столбцов (столбец 8:17), содержащих различные имена актеров в нескольких фильмах, каждая строка - это фильм иколонка 8:17 названы 10 главных актеров в этом фильме.Я хочу проверить, фигурирует ли имя определенного актера «Сэмюэл Л. Джексон» в любой из этих колонок (8:17) для каждого фильма.
Я создал пустой столбец в конце моего фрейма данных.Если имя присутствует в столбце 8:17, я хочу присвоить 1.Если это не так, я хочу, чтобы это было 0.
Это довольно простая проблема, как кажется, однако я пробовал много разных вещей, и ни одна из них, похоже, не работает ...
Что делатьdo?
Я пробовал этот цикл для каждой строки (фильма) с помощью функции ifelse, и я пробовал то же самое с отдельными операторами if else.
for (i in nrow(All_dataset)) {
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 8], 1, 0)
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 9], 1, 0)
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 10], 1, 0)
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 11], 1, 0)
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 12], 1, 0)
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 13], 1, 0)
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 14], 1, 0)
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 15], 1, 0)
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 16], 1, 0)
All_dataset[i, 18] <- ifelse("Samuel L. Jackson" %in% All_dataset[i, 17], 1, 0)
}
for (i in nrow(All_dataset)) {
if (is.element("Samuel L. Jackson", All_dataset[i, 8]) == TRUE) {
All_dataset[i, 18] <- 1
}
else if (is.element("Samuel L. Jackson", All_dataset[i, 9]) == TRUE) {
All_dataset[i, 18] <- 1
}
else if (is.element("Samuel L. Jackson", All_dataset[i, 10]) == TRUE) {
All_dataset[i, 18] <- 1
}
else if (is.element("Samuel L. Jackson", All_dataset[i, 11]) == TRUE) {
All_dataset[i, 18] == 1
}
else if (is.element("Samuel L. Jackson", All_dataset[i, 12]) == TRUE) {
All_dataset[i, 18] == 1
}
else if (is.element("Samuel L. Jackson", All_dataset[i, 13]) == TRUE) {
All_dataset[i, 18] <- 1
}
else if (is.element("Samuel L. Jackson", All_dataset[i, 14]) == TRUE) {
All_dataset[i, 18] <- 1
}
else if (is.element("Samuel L. Jackson", All_dataset[i, 15]) == TRUE) {
All_dataset[i, 18] <- 1
}
else if (is.element("Samuel L. Jackson", All_dataset[i, 16]) == TRUE) {
All_dataset[i, 18] <- 1
}
else if (is.element("Samuel L. Jackson", All_dataset[i, 17]) == TRUE) {
All_dataset[i, 18] <- 1
}
else {
All_dataset[i, 18] <- 0
}
}
Иногда ИСТИНАприсваивается всем им, иногда FALSE, но это никогда не делается правильно (1 для фильма появляется Сэмюэль и 0, если он не появляется)