일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 시각화
- GNN
- pyhton
- 프로젝트
- 파이썬
- 인턴10
- likelion
- Plotly
- Python
- DFS
- ux·ui디자인
- 마이온
- 그리디
- SQL
- DP
- Join
- 멋사
- BFS
- 마이온컴퍼니
- 멋쟁이사자처럼멋쟁이사자처럼
- TiL
- intern10
- 알고리즘
- seaborn
- GIS
- 멋재이사자처럼
- 멋쟁이사자처럼
- folium
- parklab
- likelionlikelion
- Today
- Total
지금은마라톤중
캐글 타이타닉 ( 1 ) 본문
공부 기록 블로그 시작!!
어떻게 쓰는건지 잘 모르겠다...
일기도 안 쓰고 기록이란걸 너무 오랜만에 해봐서..어떻게든 되겠지!!!
일단 go on
시작은 캐글 타이타닉 데이터로
https://youtu.be/_iqz7tFhox0?list=PLC_wC_PMBL5MnqmgTLqDgu4tO8mrQakuF
캐글 타이타닉 Titanic -1. Dataset check
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
plt.style.use('seaborn')
sns.set(font_scale=2.5)
import missingno as msno
# ignore warnings
import warnings
warnings.filterwarnings('ignore')
%matplotlib inline
df_train = pd.read_csv('../input/titanic/train.csv')
df_test = pd.read_csv('../input/titanic/test.csv')
사용하는 lib
- numpy
-pandas: csv, exel 등 다양한 파일 읽을 수 있다.
-matplotlib
-seaborn
-missingno : 채워지지 않은 널 값을 쉽게 보여주는 lib
-warnings : ignore로 하여 경고가 뜨지 않게 한다.
시작전에 스타일과 폰트 사이즈를 지정해서 매번 지정하는 번거로움을 줄인다.
%matplotlib inline : 코드 아래에 바로 표현되게 하는 것
*sklearn : 머신러닝을 하는 lib
df_train.head : 데이터셋의 처음 부분을 출력 / 기본값 : 5개
df_train.describe() : 간단한 통계적 수치 알려준다.( 개수, 평균 등)
df_train[col].isnull().sum() : df_train 열에 널값의 합을 의미
msno.matrix(df=df_train.iloc[:,:], figsize=(8,8), color = (0.8,0.5,0.2))
matrix의 흰 부분은 널값을 의미
msno.bar(df=df_train.iloc[:,:], figsize=(8,8), color = (0.8,0.5,0.2))
matrix를 bar로 바꾸면 오른쪽 그림처럼 나온다.
캐글 타이타닉 Titanic - 2. EDA - Pclass
-EDA : 탐색적 데이터 분석
https://youtu.be/sDH2zr48gTE?list=PLC_wC_PMBL5MnqmgTLqDgu4tO8mrQakuF
f, ax = plt.subplots(1,2,figsize=(18,8))
df_train['Survived'].value_counts().plot.pie(explode=[0,0.1], autopct='%1.1f%%', ax=ax[0], shadow=True)
ax[0].set_title('Pie plot - Survived')
ax[0].set_ylabel('')
sns.countplot('Survived', data=df_train, ax=ax[1])
ax[1].set_title('Count plot - Survived')
plt.show()
f, ax = plt.subplots(1,2,figsize=(18,8))
-> 도화지 그리는 것 (행, 열 , 사이즈(가로, 세로))
- explode : 쪼개는 것
- autopct : 퍼센트의 형식을 나타냄
- shadow : 그림자
df_train[['Pclass', 'Survived']].groupby(['Pclass'], as_index=True).count()
- Pclass로 묶어서 Survived의 갯수를 나타냄.
pd.crosstab(df_train['Pclass'], df_train['Survived'], margins= True).style.background_gradient(cmap='cool')
-crosstab
-margin : All의 유무를 나타냄
-style.background_gradient(cmap='cool') : 테마를 지정할 수 있다.
df_train[['Pclass', 'Survived']].groupby(['Pclass'], as_index=True).mean().sort_values(by='Survived', ascending=False).plot()
df_train[['Pclass', 'Survived']].groupby(['Pclass'], as_index=False).mean().sort_values(by='Survived', ascending=False).plot()
- 두 그래프는 as_index=True / False의 차이이다.
- as_index는 index로의 사용 여부를 결정한다.
- ascending : 오름차순을 의미
y_position = 1.02
f, ax = plt.subplots(1,2,figsize=(18,8))
df_train['Pclass'].value_counts().plot.bar(color=['#CD7F32','#FFDF00','#D3D3D3'], ax=ax[0])
ax[0].set_title('Number of passengers By Pclass', y=y_position)
ax[0].set_ylabel('Count')
sns.countplot('Pclass', hue='Survived', data=df_train, ax=ax[1])
ax[1].set_title('Pclass : Survived vs Dead', y=y_position)
plt.show()
-hue : 색깔로 구분시켜줄 때 사용
'Machine Learning > Kaggle' 카테고리의 다른 글
캐글 타이타닉 ( 6 ) (1) | 2022.11.23 |
---|---|
캐글 타이타닉 (5) (0) | 2022.10.27 |
캐글 타이타닉 ( 4 ) (2) | 2022.10.09 |
캐글 타이타닉 ( 3 ) (0) | 2022.10.09 |
캐글 타이타닉 ( 2 ) (1) | 2022.10.03 |