빅분기 9회 실기시험 합격 후기 + 공부법

9회 실기 후기

우테코 프리코스가 끝난 뒤로 대략 1주일간 공부했다.

파이썬은 계속 써왔지만 판다스와 넘파이는 몇년만에 써보는거라 다시 공부하는 수준이었다.

대학교시절 머신러닝을 R로 했었는데 빅분기에선 R보다는 파이썬이 유리할것 같아서 그냥 파이썬으로 공부했다.

답 맞춰보니 합격은 한것같은데 확실하진 않으니 기다려봐야지

 

9회 시험은 구름IDE에 트래픽이 몰려서 사전점검 시간과 본시험 시작하고나서도 잠깐동안 코드 실행이 먹통이 되는 바람에 총 3시간 10분 주어졌다. 

 

신영진컴퓨터학원에서 봤는데 다소 낡아 보이고 어수선한 분위기의 시험장이지만 될건 다 되고 무난했다.

어차피 코드는 클라우드 환경에서 돌리는거라 크롬브라우저만 잘 되면 스펙은 중요하지도 않고. 걍 아무데서나 보시길

옆에서 시험 내내 키보드 부숴먹을거같이 콱 콱 치던 사람이 겁나 신경 쓰인것 말고는 만족한다. 이건 뭐 운이니까.



체감 난이도

1-1.(대출액) 난이도 중하

쉽게 풀어서 기억이 나질 않아 코멘트할게 없다. groupby랑 sort_values 썼던것 정도?

 

정답은 4146510700으로 적었음

 

1-2.(범죄율) 난이도 상

연도별 최대 검거율 (검거건수 / 발생건수)  을 가진 범죄유형을 찾아서 검거건수 총합 구하기

연도 구분 사이버범죄 강력범죄 ... 사기범죄
2014 검거건수 123 456 ... 789
2014 발생건수 987 654 ... 231

 

이러한 테이블이 주어지는데 일단 검거건수, 발생건수만을 저장하는 테이블로 분리하고 하고

각각을 피벗테이블하여 컬럼은 연도 행은 검거 or 발생건수로 변경한뒤

concat으로 열방향으로 붙여서 아래와 같이 만들었다.

  2014검거 2014발생 ... 2020검거 2020발생
사이버범죄 123 987 ... 555 666
... ... ... ... ... ...
사기범죄 789 231 ... 777 888

 

이제 연도별 범죄율 컬럼을 만들어주고 sort_values를 통해 최대값을 찾아 싹 더하면 끝.

사실상 노가다했다.

 

정답은 7799로 적었음

 

1-3.(근속연수a+b) 난이도 상

주어진 순서대로 전처리시키고 2개의 값을 더하여  제출하는 방식이었다.

na인 컬럼이 두개있었는데 하나는 평균으로 대체하라고 했고 나머지 하나인 근속연수는 na값을 그 컬럼이 속해있는 부서와 등급들 평균으로 채워넣으라라고 해서 복잡했다.

merge를 대충 공부해가서 생각이 안나서 groupby로 부서및 등급별 근속연수 평균을 구하였고 apply를 통해 채워넣었다. (부서와 등급을 확인하여 채우는 함수는 if else노가다로 작성함)

 

na가 채워졌으면 조건을 걸어 2개의 값a, b를 구하고 그걸 더한 값을 제출시켰다.

 

정답은 20으로 적음

 

 

2유형 난이도 하

결측치도 없는 깔끔한 테이블을 주고선 분류시켰던 문제였다. 

무지성 랜덤 포레스트 하면 된다. lightGBM이 조금 성능이 높다고는 하는데 유의미한 차이는 없을듯 

출력 형식도 빅분기 체험환경과 동일했다. result csv에 pred컬럼으로 저장시켰다.

사실상  데이터만 다르지 구름IDE 체험환경이랑 동일한 문제라고 봐도 무방할 정도

 

0.6대 f1스코어 받은거같은데 큰 의미 없을거같고 점수 까봐야 알듯

 

 

3유형 난이도 중상

내가 공부를 대충하고가서 중상이지 빡세게 했으면 체감 난이도 중하였을듯.

큰 맥락으로 3-1에 다중선형회귀, 3-2에 로지스틱회귀를 문제가 나왔다.

 

3-1-1 5% 유의한 설명변수 구하는 문제? 그냥 summary()해서 pvalue가 0.05이하인 개수 인 2 적었다

3-1-2 피어슨 상관계수 구하는 문제? 공부 안해서 제꼈다.

3-1-3 테스트데이터 RMSE구하는 문제 sklearn.metrics의 root_mean_squared_error로 풀었다.

 

3-2-1 pvalue 구하는 문제: summary()를 통해 구했다.

3-2-2 오즈비 구하는 문제: summary()의 해당 컬럼 계수를 np.exp()한 값을 적어서 냈다.

3-2-3 이탈확률 고객수 구하는 문제: 이탈확률이 뭐지 싶어서 걍 안풀고 낸거 같은데 다른사람 풀이 보니까 이탈확률을 나타내는 컬럼이 있었고 모델로 예측한 값이 0.3 넘는거 쓰면 되는듯? 아깝다.

 

 

 

나의 공부법

작업 1유형(30점)

 

판다스 연습 튜토리얼 — DataManim

판다스 연습 튜토리얼 9회 빅분기 실기 대비 강의, 블로그만으로는 도저히 안되겠다ㅠ 하시는분들에게 추천합니다. 아 제발 광고 한번씩만 눌러주세요 ㅠㅠ 두번은 더 좋구요 빅분기, adp 정보공

www.datamanim.com

데이터마님의 데이터 전처리 100문제 답지와 해설 동영상을 참고하며 풀고 답지를 안봐도 풀수있게끔 노력했다.

모의고사 6회 이후로 날짜와 시간 관련 문제가 없었어서 슬슬 나올때 된것 같으니 6회 기출 1번 문제는 꼭 풀어보자. 

그리고 9회 기출 복원을 구해서 꼭 풀어보길 추천한다. 어려웠음...

추가로 pd.melt()도 알아두면 좋을거같다.

 

나는 데이터마님 사이트에서 1,2,3유형 연습문제는 풀지 않았고 기출 복원을 주로 풀었다.

 

 

작업 2유형(40점)

아답터 채널 영상을 보고 무지성 랜덤포레스트 하자. 

일단 한번은 끝까지 보고 영상의 30:46초부터 분류, 회귀하는법 숙달시키면 된다.

9회 시험 기준 이것만 마스터하면 무리없이 풀 수 있었고 
train_test_split() 테스트 사이즈  0.1로 제출했던거로 기억하는데 무난하게 40점 나왔다.

 

 

작업 3유형(30점)

다중선형회귀랑 로지스틱 회귀문제를 계속 내려는거같다. 

아답터님 3유형 영상, 벼락치기용 블로그 포스트 를 보고 공부했다.

statsmodels summary()만 할줄 알아도 최소 10점은 먹는듯