파이썬 기초 - 7
Data Analyst

빅데이터 관련 자료/Dacon

파이썬 기초 - 7

carpe08 2021. 8. 24. 00:51
320x100
320x100

필요한 라이브러리 불러오기

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

 

데이터셋 불러오기

# mpg 데이터셋을 불러옵니다.

df = sns.load_dataset('mpg')
df

 

데이터셋 일부만 가져오기

데이터 앞부분

df.head()

데이터 뒷부분

df.tail()

 

요약하기

df.info()

 

 

결측치 보기

df.isnull().sum()

 

결측치 시각화하기

sns.heatmap(df.isnull(), cmap="Grey_r")

기술 통계 구하기

 

describe 를 통해 범주형 변수에 대한 기술통계를 보기

df.describe(include='object')

 

범주형 변수

범주형 데이터 유일값의 빈도수

nunique() 값을 통해 빈도수를 확인

df.nunique()

countplot 으로 origin 빈도수 시각화하기

sns.countplot(data=df, x="origin")

1개 변수의 빈도수

origin 의 빈도수 구하기

df["origin"].value_counts()

 

2개 이상의 변수에 대한 빈도수

countplot 으로 origin 의 빈도수를 시각화하고 cylinders 로 다른 색상으로 표현

sns.countplot(data=df, x="origin", hue="cylinders")

 

countplot 으로 cylinders 의 빈도수를 시각화 하고 origin 으로 다른 색상으로 표현

sns.countplot(data=df, x="cylinders", hue="origin")

 

 

pd.crosstab 으로 시각화한 값 직접 구하기

pd.crosstab(df['origin'],df['cylinders'],normalize=True) #normalize는 비율

 

범주형 vs 수치형 변수

barplot 으로 origin 별 mpg 값 구하기

ci(신뢰수준)를 없애주는게 더 빠르다.

sns.barplot(data=df, x="origin", y="mpg", ci=None)

groupby 를 통한 연산

groupby 를 통해 origin 별로 그룹화하고 mpg의 평균 구하기

df.groupby(["origin"])["mpg"].mean()

 

 pivot table을 통한 연산

pivot_table 로 같은 값 구하기

pd.pivot_table(data=df, index="origin", values="mpg")

barplot 으로 합계 값 구하기

sns.barplot(data=df, x="origin", y="mpg", estimator=np.sum, ci=None)

barplot 에 hue 를 사용하여 색상을 다르게 표현

sns.barplot(data=df, x="cylinders", y="mpg", hue="origin", ci=None)

 

groupby 를 통해 위 시각화에 대한 값을 구하기 

df.groupby(["cylinders","origin"])["mpg"].mean().unstack()

 

pivot_table 를 통해 위 시각화에 대한 값을 구하기

pd.pivot_table(data=df, index="cylinders", columns="origin", values="mpg")

 

cylinders 와 mpg 의 x, hue 값을 변경해서 시각화

sns.barplot(data=df, x="origin", y="mpg", hue="cylinders", ci=None)

boxplot과 사분위수

sns.boxplot(data=df, x="origin", y="mpg")

 

groupby로 origin 값에 따른 mpg의 기술통계 구하기

df.groupby("origin")["mpg"].describe()

 

산점도를 통한 범주형 데이터 표현

scatterplot 으로 범주형 변수 그리기

sns.scatterplot(data=df, x="origin", y="mpg")

같은 값은 겹쳐서 어디에 데이터가 많은지 모르는 문제점이 생긴다.

 

stripplot 으로 범주형 변수 그리기

sns.stripplot(data=df,x="origin",y="mpg")

 데이터가 많으면 겹쳐서 보d이는 문제점이 생긴다.

 

swarmplot 으로 범주형 변수 그리기

sns.swarmplot(data=df,x="origin",y="mpg",size=3)

 

catplot 으로 범주형 변수 그리기

sns.catplot(data=df,x="origin",y="mpg")

catplot을 통한 범주형 데이터의 서브플롯 시각화

 

catplot 으로 boxplot그리기

sns.catplot(data=df,x="origin",y="mpg",col="cylinders",col_wrap=3,kind="")

 

catplot 으로 violinplot그리기

sns.catplot(data=df,x="origin",y="mpg",col="cylinders",col_wrap=3,kind="violin")

 

catplot 으로 countplot그리기

sns.catplot(data=df,x="origin",col="cylinders",col_wrap=3,kind="count")
320x100
320x100