다음 R 코드를 실행했을 때 출력되는 두 결과를 차례로 바르게 나타낸 … | [ADsP] 데이터분석 준전문가 기출유형 모의고사 6회 상세 페이지
1[ADsP] 데이터분석 준전문가 기출유형 모의고사 6회
다음 R 코드를 실행했을 때 출력되는 두 결과를 차례로 바르게 나타낸 것은? (swiss 는 47행 6열 데이터프레임이다)> a <- sapply(swiss, mean) > b <- lapply(swiss, mean) > c1 <- apply(swiss, 2, range) > c(class(a), class(b)) > dim(c1)
1
list list / 6 2
2
data.frame list / 2 6
3
numeric list / 6 2
4
numeric list / 2 6
해설
sapply 는 열마다 길이 1인 결과를 numeric 벡터로 단순화하고 lapply 는 항상 list 를 반환한다.
apply(swiss, 2, range) 는 열마다 최솟값·최댓값 2개를 열로 쌓으므로 2행 6열 행렬이 된다.
- list list: sapply 는 단순화가 가능하면 리스트로 두지 않는다
- 6 2: 함수 결과가 행 방향으로 쌓여 열 수가 변수 수인 6이다
- data.frame: sapply 결과는 데이터프레임이 아니라 벡터이다
오류나 개정된 내용이 보이면 알려주세요