본문 바로가기

데이터/데이터사이언스입문

3.1 시각화와 그래프

해당 글은 코드잇 강의를 참고하여 작성되었습니다.

- 시각화의 두 가지 목적

  1. 분석에 도움이 된다.
  2. 리포팅에 도움이 된다.
JupyterNotebook에서 그래프를 그릴 때는 %matplotlib inline 을 삽입해주어야 한다.

 

- 선 그래프

  • 변화를 보여주기에 적합하다
  • 가장 기본이 되는 그래프라 kind를 안써줘도 된다 

 

- 막대 그래프

  • 카테고리를 비교하기 위해 사용된다
    df.plot(kind='bar') 세로 막대그래프
    df.plot(kind='barh') 가로 막대그래프
    df.plot(kind='bar', stacked=True) 쌓아 보여주기
    df['column명'].plot(kind='bar') 특정 column만 보여주기

- 실습과제

문제 :
실리콘 밸리에서 일하는 사람들의 정보가 있습니다.
직업 종류, 인종, 성별 등이 포함되어 있는데요.
실리콘 밸리에서 일하는 남자 관리자 (Managers)에 대한 인종 분포를 막대 그래프로 다음과 같이 그려보세요.
정답 : 
%matplotlib inline
import pandas as pd

df = pd.read_csv('data/silicon_valley_summary.csv')

# 코드를 작성하세요.
df[(df['gender']=='Male') &(df['job_category'] == 'Managers') & (df['race_ethnicity'] != 'All')].plot(kind='bar', x='race_ethnicity',  y='count')​

 

 

- 파이 그래프

  • 절대적인 수치보다 비율을 보여준다 

-실습과제

문제 :
이번에는 어도비 (Adobe)의 직원 분포를 한번 살펴봅시다.
어도비 전체 직원들의 직군 분포를 파이 그래프로 그려보세요.
(인원이 0인 직군은 그래프에 표시되지 않아야 합니다.)
정답 : 
%matplotlib inline
import pandas as pd
df = pd.read_csv('data/silicon_valley_details.csv')

# 코드를 작성하세요.
adobe = (df['company'] == 'Adobe') & (df['race'] == 'Overall_totals') & (df['count'] != 0)
except_total = (df['job_category'] != 'Totals') & (df['job_category'] != 'Previous_totals')
abobe_job = df[adobe & except_total]
abobe_job.set_index('job_category', inplace=True)
abobe_job.plot(kind='pie',y= 'count')​

 

 

- 히스토그램

  • 연속적인 값을 보여준다
    bins의 기본값은 10(작성안하면)

 

- 박스 플롯

  • 어떤 Dataset에 대한 통계 정보를 시각적으로 보여준다. 

 

- 산점도

  • 상관관계를 보여주기에 적합하다 

'데이터 > 데이터사이언스입문' 카테고리의 다른 글

3.3 통계 기본 상식  (0) 2021.07.09
3.2 Seaborn 시각화  (0) 2021.07.09
2.3 큰 데이터 다루기  (0) 2021.07.08
2.2 데이터 변형하기  (0) 2021.07.07
2.1 DataFrame 인덱싱  (0) 2021.07.07