새로 시작한 R 세션에서 다음 코드를 실행했을 때, 마지막 두 줄의 출… | [ADsP] 데이터분석 준전문가 기출유형 모의고사 3회 상세 페이지
1[ADsP] 데이터분석 준전문가 기출유형 모의고사 3회
새로 시작한 R 세션에서 다음 코드를 실행했을 때, 마지막 두 줄의 출력을 차례로 나열한 것은?> a <- 10; b <- c(1, 2); f <- function(n) n * 2 > rm(list = setdiff(ls(), "f")) > length(ls()) > f(3)
1
3, 6
2
0, 오류
3
0, 6
4
1, 6
해설
ls() 로 얻은 객체 이름 중 "f" 만 빼고 지우므로 작업공간에는 함수 f 하나가 남아 길이는 1, f(3) 은 6이다.
setdiff(ls(), "f") 는 "a", "b" 를 돌려주고, rm(list = …) 은 그 이름의 객체만 삭제한다. 함수도 객체이므로 ls() 목록에 포함된다.
- 0, 6: f 까지 지워졌다고 본 값(f 는 삭제 대상에서 제외)
- 3, 6: rm 이 실행되지 않았다고 본 값
- 0, 오류: 함수가 지워졌다고 본 경우로 f 는 남아 호출된다
오류나 개정된 내용이 보이면 알려주세요