다음 R 코드의 마지막 줄 실행 결과로 옳은 것은?> m <… | [ADsP] 데이터분석 준전문가 기출유형 모의고사 9회 상세 페이지
1[ADsP] 데이터분석 준전문가 기출유형 모의고사 9회
다음 R 코드의 마지막 줄 실행 결과로 옳은 것은?> m <- cbind(a = 1:2, b = c("x", "y")) > d <- data.frame(a = 1:2, b = c("x", "y")) > l <- list(a = 1:2, b = "x") > c(class(m[, "a"]), class(d$a), class(l$a))
1
문자형, 문자형, 정수형
2
정수형, 정수형, 정수형
3
문자형, 정수형, 정수형
4
정수형, 정수형, 리스트
해설
행렬은 모든 원소가 같은 형이어야 하므로 숫자 열이 문자형으로 강제 변환되고, 데이터프레임과 리스트는 열·원소마다 형을 따로 유지한다.
그래서 m[, "a"] 는 character(문자형), d$a 와 l$a 는 integer(정수형) 이다.
- 정수형 셋: 행렬이 서로 다른 형을 함께 담는다고 본 오류
- 문자형 둘: 데이터프레임 열도 강제 변환된다고 본 오류
- 리스트: $ 추출은 리스트가 아닌 원소 자체를 돌려준다
오류나 개정된 내용이 보이면 알려주세요