[Day 5] Sprint Review

2022. 1. 24. 14:24AI/Codestates

728x90
반응형

https://www.codestates.com/

 

코딩부트캠프 | 코드스테이츠 - 비전공생도 개발자가 될 수 있습니다

코딩부트캠프를 찾는다면? 개발자로 커리어 전환을 위한 책임있는 코딩 교육 기관! 서비스 기획자, 그로스 마케터, 데이터 사이언티스트 등 다양한 전문 커리어에 도전하세요. 취업 성공의 후기

www.codestates.com


Summary

  • 데이터셋을 불러오기 위한 단계
    1.  Description을 통해 데이터셋에 대한 정보를 파악합니다
      • 행과 열의 수 
      • 열에 헤더가 있는지 ( "데이터 이름"이 있는지? )
      • 결측 데이터 ( Missing Data )가 있는지 확인
      • 원본형태를 확인하기
    2. pandas.read_csv를 사용하여 데이터셋 불러오기를 시도하고, 오류가 있다면 원인에 대해 조사하기
  • EDA(Exploratory Data Analysis) 탐색적 자료 분석
    • EDA란? 데이터 분석에 있어서 매우 중요한 조기분석단계를 의미하면
      • 시각화 같은 도구를 통해서 패턴을 발견하거나
      • 데이터 특이성을 확인하거나
      • 통계와 그래픽 ( 혹은 시각적 표현 )을 통해서 가설을 검증하는 과정등을 포함합니다.
    • EDA의 방법
      • Graphic :  차트 혹은 그림
      • Non-Graphic : Summary statistics
    • EDA의 "타겟" ( 데이터 )
      • Univariate
      • Multi - variate
  • df = df.transpose() # 행과 열 바꾸기 
    # transpose()를 할 경우 첫번째 row가 인덱스 값으로 바뀌게되므로 제거해줘야 함. 
    df.rename(columns = df.iloc[0], inplace = True) 
    df = df.drop(df.index[0])
  • 엑셀 파일 시트가 여러 개인 경우
    • import pandas as pd 
      # sheet_name = "시트 순서 index" 
      pd.read_excel("주소", sheet_name = 0)
  • 데이터 크기 확인
    • ( 행, 열 ) 값 확인 하기 
      df.shape
    • 결측치 ( NaN 값 또는 None 값 ) 대체 및 제거
    • df = df.fillna(0)
    • 결측치가 있는 행 제거
      df.dropna(axis = 0)
    • 결측치가 있는 열 제거
      df.dropna(axis = 0)
    • 결측치 인덱스 상 앞 데이터로 대체
      df.fillna(method = "ffill")
    • 결측치 인덱스 상 뒤 데이터로 대체
      df.fillna(method = "bffill")
  • Feature Engineering
    : 도메인 지식과 창의석을 바탕으로, 데이터셋에 존재하는 Feature들을 재조합하여 새로운 Feature을 만드는것.
    ex) BMI
  • Tidy
    • NaN ( Not A Number ) -> float 형
  • Type 알아보기
    df.dtypes
  • apply 사용법
    • apply안에 들어갈 함수를 선언
    • column에 apply 적용
    • ex)
      df["자본"].apply(toInt)​
  • 데이터 합치기
    • concat 
      • ex) pd.concat([x, y]) -> column으로 합쳐짐
      • ex) pd.concat([x, y], axis = 1) -> row로 합쳐짐
    • merge
      • Inner-Join :  두 데이터간의 중복된 요소만을 Join
      • Outer-Join :  모든 데이터들을 Join
      • Left-Join : 왼쪽 데이터셋을 기준으로 Join
      • Right-Join : 오른쪽 데이터셋을 기준으로 Join
  • Conditioning
    • to_numberic() 함수로 numberic형으로 변환
  • Groupby
    • df.groupby("테마").mean()​
       -> df 변수에서 "테마" feature을 기준으로 평균 값 구하기
  • Tidy data
    • df.melt(id_vars= "survived", value_vars= ["adult_male", "alone"], var_name= "variable", value_name="Value")
      -> df 변수에서 "survived"를 기준으로 "adult_male", "alone"에 대해 var의 이름은 "variable" 이고 value의 이름은 "Value"로 저장해서 melt함
  • Tidy data -> Wide data
    • df_tidy.pivot_table(index = "survived", columns= "variable",aggfunc="mean")
      ->  index에 "survived" 데이터를 column에 "variable" 데이터들의 평균 값을 table 형태로 출력
  • 미분 ( Derivative )
    • 미분이란? 작을 미(微) 와 나눌 분(分) 으로 작게 나눈다는 뜻
    • Δx를 점점 0에 가깝게 해서 순간의 변화량을 측정 하고자 하는것이 더 구체적인 목표
  • 미분 공식  w / Python
    • Numberical Method
      : 실제로 0으로 나눌 수는 없기 때문에 0에 매우 근사한 값을 사용, 보통 1e - 5을 사용한다.
    • 𝑓(𝑥) = 상수  𝑓(𝑥) = 0
    • 𝑓(𝑥)=𝑎𝑥𝑛  𝑓(𝑥)=𝑎𝑛𝑥(𝑛1)  --> Power Rule
    • 𝑓(𝑥)=𝑒𝑥  𝑓(𝑥)=𝑒𝑥
    • 𝑓(𝑥)=𝑙𝑛𝑥  𝑓(𝑥)=1 / 𝑥 --> 자연로그 중요 ✮✮✮
  • 경사 하강법 ( Gradient Desent )
    : 오차 함수인 𝜀을 최소화 하는 a, b를 찾을 수 있는 최적화 알고리즘 중의 하나
  • 그래프 색 입히기 ( 색 확인 )
    plt.plot(data_for_graph["biden_online_multiple"], color='#c93e51')​
  • 그래프 제목 설정 ( title() 함수 사용 ) 
    plt.title("Biden's Ukraine-related media bump is fading")​
728x90
반응형

'AI > Codestates' 카테고리의 다른 글

[Day 7] Hypothesis Test 2  (0) 2022.01.26
[Day 6] Hypothesis Test  (0) 2022.01.25
[Day 4] Basic Derivative  (0) 2022.01.21
[Day 3] Data Manipulation  (0) 2022.01.20
[Day 2] Feature Engineering  (0) 2022.01.20