클라이언트/ 서버/ 엔지니어 " 게임 개발자"를 향한 매일의 공부일지

머신러닝 6 - 주택 가격 예측 선형회귀 모델 실습 2 : 결측치 처리하고 채우기 본문

인공지능/머신러닝

머신러닝 6 - 주택 가격 예측 선형회귀 모델 실습 2 : 결측치 처리하고 채우기

huenuri 2024. 9. 17. 07:40

결측치를 채우는 것부터 나머지 머신러닝 프로세스 단계를 학습해보기로 하자. 새벽에 공부하니 저녁에 할 때보다 집중이 훨씬 잘 되고 머리도 맑은 것 같다.


 

 

 

결측치 처리하기

 

데이터가 많다면 결측치를 제거해도 괜찮지만 데이터가 적으면 결측치를 다른 값으로 채워 결측치를 살려주는 것이 좋다.

 

 

False면 0을, True면 1을 반환하여 그 컬럼의 세로 총합을 구해본다.

 

 


 

 

 


 

 


 

 

 

 

 

 

채운 다음에는 원래 값에 넣어준다.

 

 


 

 

 

 

 

관할구역이 결측치라도 지역 이름은 들어있을 것이다. 이 지역 이름이 어느 관할 구역에 속하는지 파악하고 채워주는 작업을 진행한다. pivot 테이블은 데이터를 재구조화하는 것이다.

만약 values에 Price를 넣고, aggfunc에 mean을 넣으면 지역에 따른 가격 평균을 확인할 수 있다.

 

 


 

 

하나의 지역에서 관할구역이 높은 것만 나오도록 설정한다.


 

 

 

apply 함수 이용하여 결측치 처리하기

 

집계함수를 내릴 때 sum, mean, median 등의 함수를 보통 사용한다. 사용자정의함수를 넣어 복잡한 연산을 하고 싶을 때는 apply 함수를 사용한다. 이렇게 하면 결측치를 각 행별로 채울 수 있게 된다.

 

 

 

결측치마다 사용자정의 함수를 돌리도록 설정해준다. 하나의 행인지 열인지 결정하여 행마다 적용한다. 이렇게 하면 행 단위로 출력된다.

 

 

원래 행이 갖고 있는 지역 이름을 넣는다.

 

 

 


 

 


 

 

 

 

 

약한 음의 상관관계를 보인다. 연도수가 올라가면 가격이 떨어진다.

 


 

 

학습을 마치고

결측치를 확인해서 채우는 여러 가지 방식에 대해서 학습해보았다. 솔직히 재미있는 작업은 아니라서 졸리기도 했지만 그래도 잠을 이기며 공부를 진행했다. 이제 딱 한 시간의 수업 분량이 남아있는데 이것도 마저 학습하고 아침을 먹기로 하자.

한번도 듣지 않은 수업을 이 정도로 이해하며 정리할 수 있다는 것만으로도 정말 대단한 것이라 생각하며 자부심을 갖기로 했다. 지금 난 정말 잘하고 있는 것이다.

 

포기하지 않고 지금처럼 열심히 공부한다면 두 달 후 수료할 무렵에 얼마나 크게 성장해 있을지 기대가 된다.