У меня есть некоторые данные о субъекте и лицензии, и я хотел бы создать столбец, в котором будет указано, является ли лицензия подходящей для указанного субъекта.Дополнительная проблема заключается в том, что некоторые учителя преподают несколько предметов, разделенных точками с запятой, и для каждой лицензии есть несколько приемлемых предметов.
Я думаю, что мне нужно включить что-то вроде grep, но я не совсем уверен, как добавить эту функцию при объединении данных из двух таблиц.
Пример кода
Ниже приведен фрагмент моего фрейма данных:
df1 <- data.frame(Subject = c("Spanish Language Arts; I teach all subjects for my students",
"Math; Science", "Mathematics; ELA", "ELA", "Science;Math;English Language Arts",
"Spanish Language Arts; I teach all subjects for my students",
"Math", "Science;Social Studies;Mathematics;English Language Arts", "ELA",
"English Language Arts"),
Licensure = c("Content Area - Early Childhood (preK-Grade 3)",
"Core Subjects (Grades EC-6) 1770", "Mathematics (Grades 7-12) 1706",
"English Language Arts and Reading (Grades 7-12) 1709", "Core Subjects (Grades EC-6) 1770",
"English Language Arts and Reading (Grades 7-12) 1709",
"English Language Arts and Reading (Grades 7-12) 1709",
"Content Area - Elementary Education (Grades 1-6)",
"Mathematics (Grades 7-12) 1706", "Content Area - Elementary Education (Grades 1-6)"))
Вот список, который я создал и который включает все лицензии сПодходящие программы под каждой:
lic.subject_index <- list(
"Content Area - Early Childhood (preK-Grade 3)" = c("I teach all subjects for my students", "Math", "Mathematics", "ELA", "English Language Arts", "Language Arts"),
"Content Area - Elementary Education (Grades 1-6)" = c("I teach all subjects for my students", "Math", "Mathematics", "ELA", "English Language Arts", "Language Arts"),
"Core Subjects (Grades EC-6) 1770" = c("I teach all subjects for my students", "Math", "Mathematics", "ELA", "English Language Arts", "Language Arts"),
"English Language Arts and Reading (Grades 7-12) 1709" = c("ELA", "English Language Arts", "Language Arts"),
"Mathematics (Grades 7-12) 1706" = c("Math", "Mathematics")
)
Я хотел бы создать столбец, в котором будет указано, является ли комбинация субъект / лицензия приемлемой или нет:
ideal.df <- data.frame(Subject = c("Spanish Language Arts; I teach all subjects for my students",
"Math; Science", "Mathematics; ELA", "ELA", "Science;Math;English Language Arts",
"Spanish Language Arts; I teach all subjects for my students", "Math",
"Science;Social Studies;Mathematics;English Language Arts", "ELA", "English Language Arts"),
Licensure = c("Content Area - Early Childhood (preK-Grade 3)", "Core Subjects (Grades EC-6) 1770",
"Mathematics (Grades 7-12) 1706", "English Language Arts and Reading (Grades 7-12) 1709",
"Core Subjects (Grades EC-6) 1770", "English Language Arts and Reading (Grades 7-12) 1709",
"English Language Arts and Reading (Grades 7-12) 1709", "Content Area - Elementary Education (Grades 1-6)",
"Mathematics (Grades 7-12) 1706", "Content Area - Elementary Education (Grades 1-6)"),
flag = c("True", "True", "True", "True", "True", "False", "False", "True", "False", "True"))
Заранее благодарю за любую помощь, которую вы можете оказать!