У меня есть функция, которая присваивает значение (кошка, собака или кролик) столбцу c кадра данных на основе записи в столбце b:
mydf <- data.frame(a = c(1:4), b= c(1,3,5,9))
myfunction <- function(x) {
if(x == 1 | x == 2) y <- "cat"
if(x > 2 & x < 6) y <- "dog"
if(x > 6) y <- "rabbit"
return(y)
}
mydf$c <- sapply(mydf$b,myfunction)
Теперь я хотел бы написать функцию, которая делает присвоение условным для значений столбцов a AND b. Так, например, условия могут быть следующими: A: cat назначается тогда и только тогда, когда mydf $ a == 1 & mydf $ b == 1; B: dog назначается всякий раз, когда mydf $ a == 2 независимо от значения mydf $ b, а также когда mydf $ a == 3 & mydf $ b == 5; C: кролик назначается для остальных случаев. Возникли проблемы с синтаксисом, не удалось найти пример из предыдущего поста.
mydf$a==2 regardless of the value of mydf$b
, а в кодеx >2 & x <6
Какой из них правильный? - person akrun   schedule 28.10.2014