가능하면 다음 동작을 dplyr
으로 복제하고 싶습니다.많은 요인 행을 dplyr로 다시 레이블
내가하는 일은 꽤 쉽다 : 특정 기준선 레벨을 가진 여러 가지 요인이 있으며, 0/1 변수로 단순화하고 싶다.
나는이 같은 데이터 세트 시뮬레이션 경우
df <- data.frame(id = 1:100,
x = factor(sample(c("a", "b", "c"), 100, T)),
y = factor(sample(c("a", "b", "c"), 100, T)))
가 그럼 난 쉽게 이런 것을 얻을 수 있습니다
fn <- function(x) {
ifelse(x == "c", 0, 1)
}
df[c("x", "y")] <- apply(df[c("x", "y")], 2, fn)
df
그러나 dplyr
이이 날 이길 것입니다. 내가 mutate_which
을 사용하는 것에 대해 생각하고 있는데, 나는 fn
과 같은 사용자 정의 함수로 작업 할 수 없다.
% dt % % mutate (x = fn (x), y = fn (y))의 문제점은 무엇입니까? ? – Psidom
또는'df %> % mutate_at (vars (x, y), funs (if_else (. == "c", 0, 1)))' –