У меня есть data.frame
построен следующим образом:R значение находки строки на основе значения в другом столбце без IfElse
a b c d column_name
1 2 3 4 a
2 3 4 1 b
3 4 1 2 c
4 1 2 3 d
Теперь я хочу, чтобы получить значение для каждой строки, столбца, который соответствует имени в column_name. Я строю это с ifelse
как так:
df$value <- ifelse(df$column_name=="a", df$a,
ifelse(df$column_name=="b", df$b,
ifelse(df$column_name=="c", df$c,
ifelse(df$column_name=="d", df$d, "NA"))))
Однако это не очень красиво и эффективно. С более чем четырьмя возможными столбцами становится невозможно использовать.
Кто-нибудь знает более эффективный и красивый способ? Я попробовал apply()
, но не смог заставить его работать.
Благодарим за быстрое и ясное объяснение! – Jesse