x <- 1:50
case_when(x %% 35 == 0 ~ "fizz buzz",
x %% 5 == 0 ~ "fizz",
x %% 7 == 0 ~ "buzz",
TRUE ~ as.character(x))
내가 수 35
가 "buzz"
을 생산할 것으로 기대하지만 "fizz buzz"
내 추론을 생산하고 그 case_when()
들을 평가입니다 이전 문장이 참인지 아닌지에 관계없이 모든 문장을 하나씩 (마지막 문장 인 TRUE ~ as.character(x)
을 평가하므로) 35 %% 7
이 분명히 0입니다.
무엇이 누락 되었습니까?
명령문은 순서대로 평가되고 첫 번째 명령문과 일치하는 것이 첫 번째 결과를 얻고 나중에 결과로 대체되지 않습니다. – Marius
나는 왜이 마지막 문장 TRUE ~ as.character (x)가 평가되는지 왜 의아해하고있다. – tictocchoc
35, 5 또는 7로 나눌 수없는'x '값이 있습니다 - 그래서 처음 3 문장이 처리 된 후에도 여전히 처리 할 값이 남아 있습니다. 당신이 아직도 혼란 스러우면 다른 일이 일어나야한다고 생각하는 이유를 더 자세하게 설명 할 수 있습니까? – Marius