퇴근하고 급하게 저녁먹고 수업 들으니까 확실히 시간이 없긴 하다.
이 참에 회사 근처 단기 원룸이라도 알아봐야 하나 싶다.
ADP나 정보처리기사처럼 평소에 소홀히 생각한 자격증도 따두면
언젠가는 쓸모가 있을 것 같아서.

01. EDA 및 데이터 전처리 프로세스

  • 데이터 출처(고객 대출 데이터)
  • EDA 할 때
    • 데이터 불러오고 확인하기
    • 컬럼별 타입 확인하기
      • '수치형' 변수인지, '범주형' 변수인지
      • 여기서는 편의상 범주형 변수는 나중에 One-hot encoding으로
        처리하더라.
    • 중복 제거 하기
      • 중복 데이터 확인 df.duplicated()
    • 결측치 처리하기
      • 이번 교육에서는 mode(최빈값) 계산해서 넣었지만......
      • 평균이나 중앙값을 넣어도 된다.
      • 결측치에 대해서 모델로 예측해서 넣는 방법도 있긴하다.
  • 데이터 전처리 할 때
    • Scaling을 한다
      • Standard scaling
      • Min-max scaling
      • Robust scaling
    • 범주형 데이터 encoding한다
      • One-hot encoding

02. 학습하면서 재밌었던 점

  • 뭔가 일반적인 데이터 분석과는 다르게(다 패키지가 있으니까)
    직접 구현을 하셔서 흥미로웠다.
# 중간에 scaling 하는 부분 인용(스파르타 코딩클럽)
if scaling_flag == 'standardization':
  print('Standardization of numeircal features\n')
  feature_mean = np.mean(numerical_array, axis=0)
  feature_std = np.std(numerical_array, axis=0)

  feature_std = np.where(feature_std == 0, 1e-5, feature_std) # 표준편차가 0일 때 1e-5를 넣어서 처리?

  scaled_data = (numerical_array - feature_mean) / feature_std
elif scaling_flag == 'min-max':
  print('Min-max normalization of numeircal features\n')
  data_min = np.min(numerical_array, axis=0)
  data_max = np.max(numerical_array, axis=0)

  data_max = np.where(data_max == data_min, data_min + 1e-5, data_max) # min/max가 같으면 분모가 0이 되기 때문에
  • 교육 과정 때 공부를 위해서 코드는 제공하지만, 그에 대한 주석은
    따로 제공되진 않았다.(그래서 더 공부하는데 도움이 된 것 같다.)

03. 복습 포인트

  • 데이터 구조 확인
    • df.head() : 상위 5개 행, n=3 처럼 숫자 지정도 가능
    • df.tail() : 하위 5개 행
    • df.shape : 데이터 차원 수 체크
    • df.columns : 컬럼명 확인
    • df.info() : 데이터 타입 정보
    • df.describe() : 기술통계량 확인
  • 데이터 처리
    • df.isnull().sum() : 결측치 개수 확인
    • df.isnull().mean() : 결측치 비율 확인
    • df.dropna() : 결측치 제거
    • df.fillna() : 결측치 채우기
    • df.drop('컬럼명',axis=1) : 컬럼 삭제
      • df.drop(['컬럼1','컬럼2'..,''],axis=1) : 컬럼 여러 개 삭제

04. 회고

  • '재직자 교육'이라고 해서 python이나 AI서비스에 대해 어느정도 알고 들어오신 교육생들이 많을거라 생각했는데 도리어 그 반대였다.
    (python을 거의 처음 배우시는 분들도 많은 것 같았다.)
  • 사실 16주짜리 프로그램하고 10주짜리 프로그램하고 뭘 할지 고민
    많이 했었다. 근데 16주짜리는 너무 긴 것 같아서 10주짜리 했는데
    잘한 것 같다.
  • '모두의 연구소' KDT 교육 때는 velog, github 작성을 바로 하지
    않았는데(github에는 얼추 정리는 해뒀는데 velog글은 한참 밀려있다.)
    이번 재직자용 KDT심화 때는 velog, github 정리는 그때 그때
    해둬야겠다.
profile
2025화이팅!

0개의 댓글