728x90
반응형
※ 빅데이터 분석기사 이기적 책을 학습한 내용
탐색적 데이터분석 (EDA: Exploratory Data Analysis)
오늘의 공부해볼 데이터는 타이타닉 데이터 !
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df=pd.read_csv("https://raw.githubusercontent.com/YoungjinBD/dataset/main/titanic.csv")
데이터프레임의 전체 구조를 확인하는 - info()
## 데이터프레임의 구조를 살펴보기 위한 함수
df.info()
int인 Survived는 범주형변수(Object)로 형변환을 시켜준다. - astype()
df['Survived']=df['Survived'].astype(str)
df['Pclass']=df['Pclass'].astype(str)
기초 통계량을 확인하는 describe()
df.describe(include='all')
## include='all'을 넣으면 모든 변수에 대한 정보를 보여줌
## 즉 결측치를 포함한 모든 값을 보여준다.
만일 셀 수 없는 '범주형 변수'라면 unique(값의 수),top(가장 많이 출현한 애),freq(출현한 애의 값) 을 보여준다.
때문에 위에서 범주형 변수로 바꾼 Survived는 통계량은 Nan이지만 위의 값은 나타나게된다.
기초데이터 분석
Q) Pclass(좌석클래스)에 해당하는 탑승객의 빈도수를 구해보자
- groupby()와 size() 함수를 활용 (size를 쓰지 않으면 DF의 정보 값만 나옴)
Q) Fare(요금)별 생존율의 차이가 있는지 파악을 해보자
death= df[df["Survived"]=="0"]["Fare"] ## 죽은사람의 요금
live = df[df["Survived"]=="1"]["Fare"] ## 산사람의 요금
## 박스 플롯을 그리는 함수 ㅡ 빅분기 문제는 그래프를 못씀
fig,ax=plt.subplots()
ax.boxplot([death,live])
- 생존한 사람들이 요금이 높은편이지만 큰차이는 없음
- 이상치를 발견 !
Q) Sex(성별)간 생존율 차이가 있는가? (남자만 확인)
#성별에 따른 생존자 조건값을 봐보자
survive_male = df[df["Sex"]=="male"]["Survived"]
df1=pd.DataFrame(survive_male)
df1_group=df1.groupby("Survived")
df1_group.size()
여자도 동일하게 확인이 가능, 결과는 여성 탑승객이 생존이 더 높음
728x90
'IT&게임 > 빅데이터분석기사(빅분기)' 카테고리의 다른 글
빅데이터분석기사 제2유형 : ① EDA (0) | 2024.06.04 |
---|---|
빅데이터 분석기사 - 1유형 예제문제 학습하기(결측치2) (0) | 2024.06.03 |
빅데이터 분석기사 - 1유형 예제문제 학습하기(결측치) (1) | 2024.06.02 |
빅데이터분석기사 실기 공부하기- 제1유형 : 데이터 전처리② (0) | 2024.06.01 |
빅데이터분석기사 비전공자/직장인 공부 방법 및 후기 (0) | 2024.04.21 |
댓글