IT_developers

Python 데이터 분석(주피터노트북) - 타이타닉 본문

Python

Python 데이터 분석(주피터노트북) - 타이타닉

developers developing 2022. 12. 5. 12:00

타이타닉

  • 영국의 화이트스타 라인이 운영한 북대서양 횡단 여객선
  • 1912년 4월 10일 영국의 사우샘프턴을 떠나 미국의 뉴욕으로 향하던 첫 항해 중에 4월 15일 빙산과 충돌하여 침몰
  • 사고로 1,514명 사망(탑승인원2,224명)

 

라이브러리 및 세팅

  • import seaborn as sns
  • seaborn 폰트 사용 - 한글처리보다 먼저 선언해야함
    • sns.set(font_scale=1)
  • import pandas as pd
  • import matplotlib.pyplot as plt
  • 한글처리
    • plt.rcParams['font.family'] = 'Malgun Gothic'
    • plt.rcParams['axes.unicode_minus'] = False
  • 경고 메세지
    • import warnings
    • warnings.simplefilter("ignore")
  • seaborn 스타일의 그래프를 사용
    • plt.style.use('seaborn')

 

데이터 로드

 

데이터 탐색

  • survived, alive : 생존여부(0:사망, 1:생존)
  • pclass, class : First가 가장 좋은 등급, Third가 제일 낮은 등급
  • sibsp : Sibling, Spouse 숫자(형제자매/배우자 수)
  • parch : Parent, Child 숫자(부모/자녀 수)
  • fare : 요금
  • embarked : 승선지(S:Southampton, C:CHERBOURG, Q:Queenstown)
  • who : man, woman, child
  • deck : 객실 번호
  • alone : 혼자 탑승 여부

 

데이터 분석

1) class 별 탑승객 수 구하기

1-1) 시각화

  • countplot 

 

2) 승객 클래스 별로 지불한 요금의 평균?

 

3) 승객 클래스 별로 지불한 요금의 중앙값?

 

4) 생존자 정보(alive)

 

5) 생존자별 class 추출

 

6) class 별 age 기술통계요약

 

7) 성별을 그룹으로 해서 age 컬럼에 대한 최소, 중앙값, 최대값만 출력

 

8) 나이가 30세 초과인 승객들만 class별로 그룹으로 묶어 중앙값

  • 30세 초과 승객

 

9) 요금 지불 금액이 20보다 작은 승객들만 class 별로 묶어서 중앙값

 

10) 성별 시각화

  • catplot

 

11) 요금 분석 및 시각화

 

12) 생존 시각화

 

13) pd.cut() : 보고 싶은 구간을 지정해서 데이터 나누기

  • cut(데이터, 구간, 구간 레이블) : 'survived',['who',age],'class'

 

  • col = who를 기준으로 나눠서 차트를 그려줌

 

14) deck 별 탑승자 시각화

 

15) 탑승장소 : embark_town

 

16) 형제, 자매, 배우자의 수

Comments