다음은 PlantGrowth 자료를 조건으로 거른 뒤 집단별로 요약한 … | [ADsP] 데이터분석 준전문가 기출유형 모의고사 8회 상세 페이지
1[ADsP] 데이터분석 준전문가 기출유형 모의고사 8회
다음은 PlantGrowth 자료를 조건으로 거른 뒤 집단별로 요약한 R 코드와 출력이다. 옳은 것은?> s <- subset(PlantGrowth, weight > 5, select = c(group, weight)) > nrow(s) > table(s$group) > with(s, tapply(weight, group, mean))[1] 17 ctrl trt1 trt2 6 2 9 ctrl trt1 trt2 5.418333 5.950000 5.593333
1
sqldf 는 HAVING 절을 못 쓴다
2
필터 후 trt1 관측 수가 가장 적다
3
ddply 결과는 리스트로 반환된다
4
data.table 은 by 를 못 쓴다
해설
table 출력에서 weight 가 5를 넘는 관측치는 ctrl 6, trt1 2, trt2 9개이므로 trt1 이 가장 적다.
이 코드는 sqldf 의 WHERE 와 GROUP BY, data.table 의 dt[i, j, by] 와 같은 필터 후 그룹 요약을 base R 로 한 것이다.
- ddply: 분할·적용 후 결과를 데이터프레임으로 합쳐 돌려준다
- sqldf: SQL 문법을 그대로 쓰므로 HAVING 절도 쓸 수 있다
- data.table: by 인자가 바로 그룹 집계를 위한 것이다
오류나 개정된 내용이 보이면 알려주세요