Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 멋재이사자처럼
- folium
- 마이온컴퍼니
- 파이썬
- 멋쟁이사자처럼
- intern10
- TiL
- seaborn
- likelionlikelion
- 알고리즘
- 시각화
- SQL
- graphrag
- Rag
- Python
- 멋사
- GNN
- GIS
- 프로젝트
- ux·ui디자인
- DP
- DFS
- parklab
- paper review
- 마이온
- BFS
- 인턴10
- 그리디
- likelion
- Join
Archives
- Today
- Total
지금은마라톤중
캐글 타이타닉 ( 4 ) 본문
캐글 타이타닉 Titainic 7. EDA - FamilySize
df_train['FamilySize']= df_train['SibSp']+df_train['Parch'] + 1
- pandas 시리즈끼리 사칙연산이 가능하다.
- +1은 자신을 의미한다.
print('Maximum size of Family:', df_train['FamilySize'].max())
print('Minimum size of Family:', df_train['FamilySize'].min())
f, ax = plt.subplots(1,3,figsize=(40,10))
sns.countplot('FamilySize', data= df_train, ax=ax[0])
ax[0].set_title('(1) No. of Passenger Boarded', y=1.02)
sns.countplot('FamilySize',hue='Survived', data = df_train, ax=ax[1])
ax[1].set_title('(2) Survived countplot depending on FamilySize', y=1.02)
df_train[['FamilySize', 'Survived']].groupby(['FamilySize'], as_index=True).mean().sort_values(by='Survived', ascending=False).plot.bar(ax=ax[2])
ax[2].set_title('(3) Survived rate depending on FamilySize', y= 1.02)
plt.subplots_adjust(wspace=0.2, hspace=0.5)
plt.show()
해석: (1) 그래프를 보면 가족단위별로 탑승을 나타낸 것이다. (2)그래프는 가족 단위별 생존수를 나타낸 것이다. 1인단위가 인원이 많은 만큼 생존수랑 사망수도 많다. 생존율은 높은 편은 아니다. (3) 그래프에서 확인 할 수 있듯이 인원이 적거나 많다고 생존수가 커지는 연관성은 없으며, 3~4인 단위의 가족에서 생존율이 가장 높았다.
캐글 타이타닉 Titainic 8. EDA - Fare, Cabin, Ticket
-skeness(왜도) : 기준은 0, 자료의 분포모양이 평균을 중심으로부터 한 쪽으로 치우쳐저 있는 경향을 나타내는 척도,
대칭인지 아닌지 측정해주는 값 (a=0 정규분포, a>0 좌측으로 편향, a<0 우측으로 편향)
- kurtosis(첨도) : 자료의 분포모습이 정규분포보다 더 중앙에 집중하는가를 나타내는 척도
fig, ax = plt.subplots(1,1 ,figsize=(8,8))
g = sns.distplot(df_train['Fare'], color="b", label='Skewness : {:.2f}'.format(df_train['Fare'].skew()), ax=ax)
g = g.legend(loc='best')
해석: 그래프의 왜도는 4.79로 0보다 크므로 좌측에 편향되어있을 것이고 그래프의 모양 역시 그러하다.
lambda 함수 : 간단하게 한 줄로 표현 가능한 함수
lambda 매개변수 : 표현식
df_train['Fare']= df_train['Fare'].map(lambda i : np.log(i) if i > 0 else 0)
- 위 그래프를 통해 정규분포가 아닌 좌측으로 치우쳐져 있는 것을 보았다. 왜도를 없애기 위해 log를 취한다.
log를 취한 후 다시 그래프를 보았는데 다음과 같이 나왔다. 오류가 있는 것 같다. 어느 부분인지...
멘토님이 다시 찾아보라고 하셨다.
*라이브러리 종류
- numpy : 과학 계산을 위한 라이브러리, 행렬/배열 처리 및 연산, 난수생성을 할 수 있다.
- pandas : 데이터 조작 및 분석을 위한 다양한 툴과 함께 제공되는 오픈 소스 라이브러리이다. 이 라이브러리의 도움으로
SQL 데이터베이스, CSV, JSON파일 및 Excel과 같은 다양한 소스의 데이터를 읽을 수 있게 된다.
- matplotlib : 데이터를 시각화하는 라이브러리이다. 그래프와 플롯의 유형에는 오차 차트, 플롯, 히스토그램, 산점도, 막대 차트 등이 있다.
- seaborn : matplotlib를 기반으로 한 시각화 라이브러리이다. matplotlib보다 간단한 문법으로 다양한 그래프 표현가능하다.
'Machine Learning > Kaggle' 카테고리의 다른 글
캐글 타이타닉 ( 6 ) (1) | 2022.11.23 |
---|---|
캐글 타이타닉 (5) (0) | 2022.10.27 |
캐글 타이타닉 ( 3 ) (0) | 2022.10.09 |
캐글 타이타닉 ( 2 ) (1) | 2022.10.03 |
캐글 타이타닉 ( 1 ) (1) | 2022.10.03 |
Comments