SQL로 집계, Python으로 시각화한 프로젝트
학교 축제 설문 데이터 3200건을 분석하는 프로젝트에서 SQLite에 데이터를 적재하고 GROUP BY로 학과별, 학년별 만족도 평균을 집계했습니다. 이후 Python의 pandas로 이상치를 걸러내고 matplotlib으로 시각화 자료를 만들어 학생회에 제출했습니다. 결측 응답이 전체의 8퍼센트였는데, 이를 제외하지 않고 별도 항목으로 표시해 원본 데이터를 왜곡하지 않으려 했습니다.
면접관이 이 한 문장으로 확인하려는 것들. 각 갈래를 알면 답의 뼈대가 잡혀요.
학교 축제 설문 데이터 3200건을 분석하는 프로젝트에서 SQLite에 데이터를 적재하고 GROUP BY로 학과별, 학년별 만족도 평균을 집계했습니다. 이후 Python의 pandas로 이상치를 걸러내고 matplotlib으로 시각화 자료를 만들어 학생회에 제출했습니다. 결측 응답이 전체의 8퍼센트였는데, 이를 제외하지 않고 별도 항목으로 표시해 원본 데이터를 왜곡하지 않으려 했습니다.
인턴십에서 여러 시스템에서 수집된 고객 데이터 5만 건을 통합하는 작업을 맡았습니다. 이름과 전화번호 기준으로 중복을 확인했더니 약 12퍼센트가 중복이었고, 단순 삭제 대신 최신 등록일 기준으로 하나만 남기는 SQL 쿼리를 작성해 처리했습니다. 이 작업으로 실제 데이터는 이론처럼 깔끔하지 않다는 것을 배웠습니다.
동아리 웹사이트 접속 로그 한 달치, 약 10만 건을 Python으로 분석해 시간대별 접속 패턴을 확인했습니다. 정규표현식으로 로그 형식을 파싱하다 일부 라인이 형식을 벗어나 오류가 났는데, 예외 처리를 추가해 전체 파싱이 중단되지 않도록 했습니다. 결과적으로 저녁 8~10시 접속이 전체의 40퍼센트를 차지한다는 걸 확인해 공지 발송 시간을 조정하는 데 활용했습니다.
같은 실수가 반복돼요. 이것만 피해도 절반은 갑니다.
진짜 면접은 두 번째 질문부터예요. 이 답 뒤에 따라올 법한 것들.