가설 : 나이와 생존률이 관련이 있을 것이다. 나이가 어린 사람들이 살아남았을 가능성이 더 높을 것이다.
1) 라이브러리 불러오기
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
numpy : 데이터 연산을 도와주는 라이브러리
seaborn : 시각화 도와주는 라이브러리
2) 데이터 불러오기, 확인 및 결측치 제거하기 (동일)
3) 통계치 요약하기
# 대략적인 값을 확인해보자
titanic.describe()
4) 시각화하기
Matplotlib의 hist() 함수는 히스토그램을 그려준다.
bins : 가로축 구간의 개수
cumulative= True or False : 누적 히스토그램 그리기
grid는 눈금 표시하기
figsize : 표 크기
#나이별로 히스토그램 구하기
titanic['Age'].hist(bins=40,figsize=(18,8),grid=True)
5) 나이별 구분 및 생존율 확인하기
#나이별 구분 및 각 나이별 생존율 확인 하기
titanic['Age_cat'] = pd.cut(titanic['Age'],bins=[0,3,7,15,30,60,100],include_lowest=True,labels=['baby','children','teenage','young','adult','old'])
#연령대를 기준으로 평균 값을 구해 볼수 있어요!
titanic.groupby('Age_cat').mean()
groupby() : 원하는 칼럼을 기준으로 그룹을 묶을 수 있도록 만드는 함수
titanic.groupby('Age_cat').mean() : 그룹별 평균 구하기
6) 나이대와 생존율 관계 그래프 그리기
# 그래프 크기 설정
plt.figure(figsize=(14,5))
# 바 그래프 그리기 (x축 = Age_cat, y축 = Survived)
sns.barplot(x='Age_cat', y='Survived', data=titanic)
# 그래프 나타내기
plt.show()
7) 데이터 해석하기, 결론 도출
생존율을 봤을 때, 연령대가 낮은 baby, children 그룹이 높았고, 연령대가 높은 old 그룹은 낮았다.
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
2) 데이터 가지고 와서 table로 읽기
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
diabetes = pd.read_table('/content/diabetes.csv', sep=',')
3) 데이터 결측치 없애주기
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
diabetes = pd.read_table('/content/diabetes.csv', sep=',')
diabetes
diabetes.dropna()
4) 데이터 분석하기
상관계수 구하기
Outcome이 자기 자신과 가지는 상관계수는 1이므로 Outcome 값은 하나 없애준다.
5) 시각화하기
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
diabetes = pd.read_table('/content/diabetes.csv', sep=',')
diabetes
diabetes.dropna()
corr = diabetes.corr(method="pearson")
corr = corr[corr.Outcome != 1]
corr['Outcome'].plot.bar()