본문 바로가기
데이터 분석

ADP 34회 실기 문제 복기

by Dam_ 2025. 4. 26.

  이번 회차는 직전 기출(32회, 33회)과 유사한 난이도였으며, 최근 기출 문제들을 숙지하신 분들에게는 친숙하고 평이하게 느껴졌을 것으로 생각합니다.

  다만, 제 주관적인 풀이 내용이므로 일부 오류나 해석상의 차이가 있을 수 있습니다.
(작성하며 보니, 정확도는 꽤 높은 편인 것 같습니다.)


1. 머신러닝 파트

(※ 모델링 코드 자체는 많지 않았고, 전처리/해석 요구가 많았습니다.)

1번 문제: 복잡한 파생변수 생성 및 예측

  • 3개의 의료 관련 순서형 범주형 변수를 기반으로 복잡한 파생변수 생성
  • 파생변수 bleed는 복잡한 조건문(np.where)을 통해 생성 (결측값 np.nan 포함)
  • 추가로 ind라는 인덱스용 변수 생성 (is.na(), .any(axis=1), .all(axis=1) 활용)
  • 생성한 파생변수 기반으로 교차표(crosstab)/빈도표 작성 요구
    → nan이 있는 경우 교차표에서 값이 누락되는 점을 시험장에서 알게 됨
  • 결측치 처리: 각 변수별로 타당한 근거를 들어 결측 대체
  • EDA:
    종속변수 2개(bleed: 0/1/결측, dead: 이진 범주)에 대해 예측을 위한 탐색적 분석 수행
  • 모델링:
    • ind==0, ind==2를 train/test로 사용하여 bleed 예측
    • ind==1 (bleed가 결측) 데이터에 대해 예측값을 채워 넣음
    • df.loc[df['ind']==1, 'bleed'] = pred
    • 단일모델 1개 + 앙상블모델 1개 사용하여 비교
    • 이후, 완성된 데이터프레임을 기반으로 dead 예측 진행 (0,1: train / 2: test)

2번 문제: 대규모 데이터 전처리 및 회귀 문제

(※ 전처리 과정에 점수는 없지만 요구사항이 매우 많았습니다.)

  • 유사 기출: 33회 2번 (지하철 users 데이터 병합)과 유사
  • 전력량 데이터 (연월일, 풍력/태양광, X5~X21: 시간대별 발전량)
    • melt → groupby.sum() → generation 열 생성
  • 날씨 데이터 병합 (on='일시')
    • 결측치 처리: 대부분 0 대체, 일부 직전값 대체
  • 날씨 변수 14개에 대해 기술통계량 요약 및 해석
  • 파생변수 생성:
    • 월 기준으로 사계절 구분(season) 변수 생성
    • season = np.where(월.isin([3,4,5]), 1, np.where(월.isin([6,7,8]), 2, np.where(월.isin([9,10]), 3, 4)))
  • 상관분석:
    • generation과 날씨 변수들의 상관계수 및 통계적 유의성 검정
  • 계절별 발전량 차이 검정:
    • One-way ANOVA를 시도했으나 가정 위반으로 Kruskal-Wallis H 검정 수행
  • 데이터 분할:
    • 2021~2022년: train / 2023년: test
  • 회귀모델링:
    • 선형회귀 1개 + 머신러닝 회귀모델 1개 비교
    • 결과 비교 및 해석

2. 통계 파트

3번 문제: Two-Way ANOVA (교호작용 포함)

(5.12 수정: 반복측정 Two-Way ANOVA, pg.mixed_anova() 사용 권장) 

  • : ID, 성별, 온라인/혼합/전통 학습 방법
  • 검정 가정 확인: 정규성, 등분산성
  • 분석 방법: 교호작용 고려, Type 3 Sum of Squares
  • 결과:
    • 주효과: 성별 유의 / 학습방법 유의 (특히 전통 학습이 가장 높음)
    • 상호작용 효과: 유의하지 않음
  • 사후검정: Tukey HSD
    • 성별 간 차이: 유의
    • 학습방법 간 차이: 전통 학습만 유의하게 높음 (온라인 < 혼합 < 전통 순)

4번 문제: 선형회귀 분석

  • : score(종속변수), 평균 공부시간, 과락횟수, 결석횟수, 학교 서포트 여부, 집 인터넷 여부 등
  • 회귀모형 검증:
    • F통계량 검정 결과 해석
    • 전체 모델 유의성 확인
  • 기본 가정 검토: 선형성, 잔차 정규성, 등분산성, 독립성
  • 모델 해석:
    • R-squared 약 0.21 → 설명력 낮음
  • 영향 변수 해석:
    • 직전학기 과락 횟수: 가장 큰 계수, 가장 강력한 설명 변수
    • 집에 인터넷 유무, 학교 서포트 여부, 결석 횟수 등도 유의
    • 평균 공부시간도 유의했지만 계수 크기는 과락횟수보다 작음

마치며

  이번 회차는 최근 기출 경향과 크게 벗어나지 않았으며, 복잡한 전처리와 통계적 해석을 빠르고 정확하게 수행하는 능력이 핵심이었던 것 같습니다. 데이터 분석의 순발력이나 민첩함을 요구한다는 느낌을 받았습니다. 

  만약 이런 경향이 유지된다면(!!) ADP 수험생들이 실기 준비하기가 좀 더 쉬워질 것 같습니다. 예전 기출들은 자료를 정리해서 가면 정리하지 않은 새로운 내용을 물어봤다면, 최근 경향은 ADsP에서도 자주 볼 수 있는 모델이나 방법론들의 원리 자체나 깊은 해석을 요구하는 것 같아요.

(+, 한글 깨진다고 문의가 많이 왔었나 봅니다. 모든 열 이름이 영어였어요.ㅋㅋ)

'데이터 분석' 카테고리의 다른 글

ADP 34회 실기 합격 후기  (3) 2025.05.26
ADP 실기 환경 세팅(파이썬 가상환경, pip)  (3) 2025.02.23