오픈소스기반데이터분석
[문제 1]
Pandas 데이터프레임에서 결측치(Missing Value / NaN)가 하나라도 포함된 행 또는 열을 제거할 때 사용하는 메서드는 무엇인가요?
① df.fillna()
② df.dropna()
③ df.isna()
④ df.replace()
상세 해설:
- df.dropna(): 결측치(NaN)가 있는 행이나 열을 즉시 제거합니다.
- df.fillna(): 결측치를 지정한 특정 값(평균값, 0 등)으로 채워 넣습니다.
- df.isna(): 결측치 존재 여부를 True/False로 확인합니다.
[문제 2]
Pandas에서 특정 컬럼의 데이터를 범주형(Categorical) 데이터로 변환하거나, 구간(Bin)별로 나누어 범주화할 때 주로 사용하는 함수는 무엇인가요?
① pd.cut()
② pd.concat()
③ pd.merge()
④ pd.groupby()
상세 해설:
- pd.cut(): 연속형 수치 데이터를 지정한 구간(예: 0~20세, 21~40세) 크기대로 나누어 범주형 데이터로 수치화할 때 사용합니다.
- pd.concat() / pd.merge(): 데이터프레임을 서로 합치거나 조인(Join)할 때 사용합니다.
[문제 3]
Python 시각화 라이브러리인 Matplotlib이나 Seaborn에서, 두 연속형 변수 간의 상관관계나 분포 패턴을 점으로 나타내는 그래프 종류는 무엇인가요?
① 히스토그램 (Histogram)
② 산점도 (Scatter Plot)
③ 막대그래프 (Bar Chart)
④ 상자수염그림 (Box Plot)
상세 해설:
- 산점도 (Scatter Plot): X축과 Y축에 두 변수의 값을 점으로 찍어 양의 상관관계, 음의 상관관계 등 데이터 간의 분포 패턴을 직관적으로 보여줍니다.
- 히스토그램: 단일 연속형 변수의 빈도수 분포를 구간별 막대로 표현합니다.
[문제 4]
Scikit-learn의 지도학습 모델 중, 데이터를 나눌 기준(질문)을 반복적으로 설정하여 나무 가지 치기 형태로 예측 규칙을 만들어가는 알고리즘은 무엇인가요?
① K-평균 (K-Means)
② 결정 트리 (Decision Tree)
③ 주성분 분석 (PCA)
④ 선형 회귀 (Linear Regression)
상세 해설:
- 결정 트리 (Decision Tree): "나이가 30세 이상인가?", "소득이 5천만 원 이상인가?" 처럼 스무고개 방식으로 조건을 분기해가며 최종 분류/회귀 예측을 수행하는 알고리즘입니다.
[문제 5]
머신러닝 평가 지표 중, 비지도 학습(Unsupervised Learning)에 해당하며 데이터들을 군집(Cluster)으로 묶어주는 알고리즘은 무엇인가요?
① 로지스틱 회귀 (Logistic Regression)
② K-최근접 이웃 (KNN)
③ K-평균 군집화 (K-Means Clustering)
④ 서포트 벡터 머신 (SVM)
상세 해설:
- K-평균 군집화 (K-Means Clustering): 정답(레이블)이 없는 상태에서 데이터 간의 거리를 기반으로 유사한 특성을 가진 데이터끼리 K개의 그룹(군집)으로 묶어주는 대표적인 비지도 학습 알고리즘입니다.