etc) 빅분기 실기대비 - R 패키지 분석

etc) 빅분기 실기대비 - R 패키지 분석

빅데이터 분석기사(빅분기) 실기시험에서 제공되는 환경의 R 패키지 목록을 알아보자.


개요

Kdata에서 2021년 4월 19일자 “제2회 빅데이터분석기사 실기 안내” 게시물로 공지한바에 따르면 시험 환경에서 R 패키지는 총 148개가 설치되어있다고 한다. 물론 이 내용은 향후 바뀔 수 있으나 보통 큰 문제가 없지 않는한 1년 단위로 바뀌고 큰 변경을 없기 때문에 최초 공지에 있는 패키지 목록을 기준으로 알아보아도 되겠다. 그리고 모든 패키지가 시험에 중요한 패키지는 아니다. 특정 패키지의 의존패키지 같은 사소한 패키지는 최대한 제외하고 알아보자.

분석 패키지

목록

caret: 모델링
e1071: 모델링
ipred: 모델링
rpart: 의사결정나무
randomForest: 랜덤포레스트
nnet: 신경망
Ckmeans.1d.dp: k-means, k-median
xgboost: XGBoost
SQUAREM: EM 모델
cluster: 클러스터링
lmtest: 선형회귀
lava: 잠재변수모델
mgcv: 일반화가법모형
nlme: 혼합효과모형
spatial: kriging
ModelMetrics: 모델평가
CARRoT: AUC
pROC: 분류모델 평가
survival: 생존분석
igraph: 네트워크 분석
influenceR: 네트워크 분석
hunspell: 텍스트 마이닝

상세

caret, e1071

머신러닝을 하기 위해서 꼭 알아야되는 패키지

ipred

boosting, bagging, cross validation 를 위한 패키지

rpart

의사결정나무의 모델링을 위한 패키지

randomForest

랜덤포레스트 모델링을 위한 패키지

nnet

간단한 신경망 모델링에 사용하는 패키지

Ckmeans.1d.dp

k-means와 k-median 등등 관련 알고리즘을 지원한다. k-means는 R에서 기본함수가 제공되기 때문에 k-median을 염두해두고 있는 것 같다.
Reverse depends를 확인해보면 e1071이나 carat 패키지의 의존 패키지가 아닌것을 알 수 있는데, 확실히 k-means 군집분석이 아닌 다른 군집분석을 출제할 수 있겠다.

xgboost

XGBoost 모델링 패키지

SQUAREM

EM(Expectation-Maximization) 모델을 위한 패키지

cluster

다양한 군집분석을 위한 패키지

lmtest

선형모형의 검정을 위해 사용하는 패키지. 과연 시험에 나올까 의심이 되는 패키지.

lava

잠재변수모델(Latent Variable Model)을 위한 패키지. 하지만 잠재변수모델링은 시험에 나오지 않을 것 같다. 보통 잠재변수모델링을 하게되면 lavaan 패키지를 쓰는데 해당 패키지는 목록에 없다.

mgcv

일반화 가법 모형(GAM)을 위한 패키지

nlme

가우시안 선형 모형 및 비선형 혼합효과 모형을 위한 패키지. 시계열 분석 관련 함수(ACF() 등)도 있다.

spatial

kriging을 위한 패키지

ModelMetrics

보다 쉽게 모델 성능평가를 할 수 있게 도와주는 패키지

CARRoT

AUC계산을 위해서 사용하는 것이 아닌가 매우 의심되는 패키지

pROC

분류모델 평가를 위해서 활용하는 대표적인 패키지

survival

생존분석을 위한 패키지(ipred 패키지의 의존 패키지로 있을 가능성이 큼)

igraph, influenceR

네트워크 분석을 위한 패키지

hunspell

텍스트 마이닝을 위한 형태소 분석에 사용하는 패키지. 그 유명한 tm패키지나 koNLP가 아닌 hunspell인지 알 수 없지만 아무튼 최소 형태소 분석은 염두해야 하겠다.

데이터 입출력 패키지

목록

readr: 파일 입출력
data.table: 파일 입출력(병렬)
jsonlite: JSON
rbibutils: Bibtex 파일 입력

상세

readr

다양한 파일 입출력을 위해 사용하는 패키지.

data.table

파일을 다중 스레드로 빠르게 읽고 쓸 수 있게 하는 패키지. 리소스가 매우 제한적인 시험 환경 때문에 존재의 의미가 없어보이는 패키지

jsonlite

JSON 파일 입출력을 위한 패키지. JSON 형식을 다루는 것은 크롤링 결과물이나 시스템 로그파일을 다룰 수 있다는 것을 의미한다. 어차피 변환만 되면 데이터프레임과 다를게 없으니 걱정 안해도 된다.

rbibutils

Bibtex 파일 입력을 위한 패키지. Bibtex 형식이 생소한 사람이 있을텐데 이건 그냥 논문이 정리된 문헌정보 관련 파일 형식이라고 보면 되겠다. 이게 있다는 것은 논문데이터가 Bibtex 파일 형식으로 제공되고 hunspell 같은 패키지와 함께 형태소 분석이 실시될 수 있다는 것을 시사한다.

데이터 핸들링 패키지

목록

doParallel: 병렬처리
parallel: 병렬처리
foreach: 병렬처리
glue: 텍스트 처리
stringr: 텍스트 처리
lubridate: 시간 데이터 처리
reshape2: 객체 구조 변경
data.table: data.table
tibble: tibble
tidyr: 종합 데이터 전처리
dplyr: 종합 데이터 전처리
purrr: 고급 데이터 처리
zoo: 결측 및 시계열 처리
MASS: 통계용 함수 및 데이터셋

상세

doParallel, parallel, foreach

병렬처리를 지원하는 패키지. 리소스가 매우 제한적인 시험 환경 때문에 존재의 의미가 없어보이는 패키지

glue

텍스트 처리관련 패키지. paste() 같은 기본함수로 대체 가능하여 몰라도 되는 패키지.

stringr

고급 텍스트 처리를 위한 패키지. 기본함수로 대부분 대체 가능하나 str_extract_all() 함수는 제법 유용하다.

lubridate

시간 데이터 처리를 위한 패키지. 시험이 아니라도 반드시 알고 있어야 하는 패키지.

reshape2

객체 구조 변경에 사용하는 패키지. melt(), dcast() 함수를 주로 활용

data.table, tibble

데이터프레임으로 대체 가능하여 굳이 필요가 없음.

tidyr, dplyr

종합 데이터 전처리를 위한 패키지

purrr

고급 데이터 전처리를 위한 패키지. 반복문과 apply() 함수를 조합하면 대부분 함수를 대체할 수 있다. 하지만 대용량 데이터 핸들링을 한다면 살펴볼만하다.

zoo

결측 및 시계열 데이터 처리를 위한 패키지.

MASS

통계용 함수 및 데이터셋을 위한 패키지. 여러 함수의 의존패키지이나 굳이 이 패키지의 함수를 사용한다면 Box-Cox 변환함수 boxcox() 를 쓸 수 있다.

시각화 패키지

목록

ggplot2: 종합 시각화
lattice: 종합 시각화
rpart: 의사결정나무 시각화
DiagrammeR: 네트워크 구조 시각화
visNetwork: 네트워크 구조 시각화
isoband: 등고선 시각화
vcd: 범주형 데이터 시각화

상세

시험 환경을 고려해볼 때 그린 그래프를 확인할 수 없기 때문에 넘어가도록 한다.

웹 및 기타 패키지

목록

remotes: 외부 패키지 설치
htmltools: HTML 관련
htmlwidgets: HTML 위젯
xmlparsedata: xml 파서
downloader: 파일 다운로드
httpuv: HTTP 및 웹소켓

상세

트래픽 때문에 현실적으로 웹작업은 힘들다고 본다. 만약에 XML데이터를 정제문제를 출제 할 수 있을텐데 XML, XML2도 없고 rvest 패키지도 없는 것을 보아 출제되기 매우 어려울 것으로 생각된다.

총평

이상하게 시계열 분석 관련해서 미흡하다. 그리고 ADP에서 말이 많았던 SOM 알고리즘도 안보인다. 하지만 네트워크 분석과 생존분석 관련 패키지가 있다는 점이 큰 차별점 같은데 향후 출제 경향을 지켜봐야 하겠다.

종합적인 내용은 etc) 빅분기 - 실기시험 준비 포스팅에서 다루니 참고하도록 하자.

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×