У меня есть data.frame и хотел бы получить определенное значение из ячейки, если другое находится в кадре данных.Определить значение в кадре данных
Я попробовал применить функцию.
n <- c(2, 3, 0 ,1)
s <- c(0, 1, 1, 2)
b <- c("THIS", "FALSE", "NOT", "THIS")
df <- data.frame(n, s, b)
df <- sapply(df$Vals, FUN=function(x){ if(b[x]=="THIS") ? n[x] : s[x] })
Моя логика:
if(b at position x is equal to "This") {
add n[x] to the column df$Vals
} else {
add s[x] to the column df$Vals
}
В то время как x
является одной строки.
Любая рекомендация, что я делаю неправильно?
Я ценю ваш ответ!
Что делать, если у вас больше условий, чем этот. как 'if() elseif() else'? – mrquad
Каковы другие условия? Это не было задано в вопросе;) –
Да, я не просил их. Тем не менее, я просто хочу узнать, как я могу это сделать в будущем. Любая рекомендация, как я мог бы это реализовать? – mrquad