У меня есть фрейм данных с двумя интересующими переменными: символьная переменная, которая является аббревиатурой состояния для каждого объекта, и код региона для каждого объекта.У меня также есть список, который связывает набор допустимых кодов регионов с каждым состоянием.
df <- data.frame(state=c("AL","CO","DE","TX"), region=c(1,2,3,4))
acceptable_regions <- list(AL=c(1,2), CO=1, DE=c(2,3), TX=(1:4))
Я хочу создать фиктивную переменную, которая присваивает «0», если регион включен в набор приемлемых кодов,и «1» в противном случае.Моей первой мыслью было использование ifelse (), но я получаю сообщение об ошибке, что на уровне 2 не получается рекурсивная индексация* работает сам по себе.
Как вытащить нужный элемент списка на основе значения переменной "состояние"?Попытка избежать петель конечно.