[Day 5] Sprint Review
2022. 1. 24. 14:24ㆍAI/Codestates
728x90
반응형
코딩부트캠프 | 코드스테이츠 - 비전공생도 개발자가 될 수 있습니다
코딩부트캠프를 찾는다면? 개발자로 커리어 전환을 위한 책임있는 코딩 교육 기관! 서비스 기획자, 그로스 마케터, 데이터 사이언티스트 등 다양한 전문 커리어에 도전하세요. 취업 성공의 후기
www.codestates.com
Summary
- 데이터셋을 불러오기 위한 단계
- Description을 통해 데이터셋에 대한 정보를 파악합니다
- 행과 열의 수
- 열에 헤더가 있는지 ( "데이터 이름"이 있는지? )
- 결측 데이터 ( Missing Data )가 있는지 확인
- 원본형태를 확인하기
- pandas.read_csv를 사용하여 데이터셋 불러오기를 시도하고, 오류가 있다면 원인에 대해 조사하기
- Description을 통해 데이터셋에 대한 정보를 파악합니다
- EDA(Exploratory Data Analysis) 탐색적 자료 분석
- EDA란? 데이터 분석에 있어서 매우 중요한 조기분석단계를 의미하면
- 시각화 같은 도구를 통해서 패턴을 발견하거나
- 데이터 특이성을 확인하거나
- 통계와 그래픽 ( 혹은 시각적 표현 )을 통해서 가설을 검증하는 과정등을 포함합니다.
- EDA의 방법
- Graphic : 차트 혹은 그림
- Non-Graphic : Summary statistics
- EDA의 "타겟" ( 데이터 )
- Univariate
- Multi - variate
- EDA란? 데이터 분석에 있어서 매우 중요한 조기분석단계를 의미하면
-
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
- concat
- Conditioning
- to_numberic() 함수로 numberic형으로 변환
- Groupby
-
-> df 변수에서 "테마" feature을 기준으로 평균 값 구하기df.groupby("테마").mean()
-
- Tidy data
-
-> df 변수에서 "survived"를 기준으로 "adult_male", "alone"에 대해 var의 이름은 "variable" 이고 value의 이름은 "Value"로 저장해서 melt함df.melt(id_vars= "survived", value_vars= ["adult_male", "alone"], var_name= "variable", value_name="Value")
-
- Tidy data -> Wide data
-
-> index에 "survived" 데이터를 column에 "variable" 데이터들의 평균 값을 table 형태로 출력df_tidy.pivot_table(index = "survived", columns= "variable",aggfunc="mean")
-
- 미분 ( Derivative )
- 미분이란? 작을 미(微) 와 나눌 분(分) 으로 작게 나눈다는 뜻
- Δx를 점점 0에 가깝게 해서 순간의 변화량을 측정 하고자 하는것이 더 구체적인 목표
- 미분 공식 w / Python
- Numberical Method
: 실제로 0으로 나눌 수는 없기 때문에 0에 매우 근사한 값을 사용, 보통 1e - 5을 사용한다. - 𝑓(𝑥) = 상수 → 𝑓′(𝑥) = 0
- 𝑓(𝑥)=𝑎𝑥𝑛 → 𝑓′(𝑥)=𝑎𝑛𝑥(𝑛−1) --> Power Rule
- 𝑓(𝑥)=𝑒𝑥 → 𝑓′(𝑥)=𝑒𝑥
- 𝑓(𝑥)=𝑙𝑛𝑥 → 𝑓′(𝑥)=1 / 𝑥 --> 자연로그 중요 ✮✮✮
- Numberical Method
- 경사 하강법 ( 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 |