#0. 준비단계 : 데이터셋 로드 밑 라이브러리 import
- 라이브러리 불러오기
-seaborn에 내장된 데이터셋 'mpg' 로드
#1. 고유값 파악하기
고유값 : 데이터셋.unique()
고유값 개수 : 데이터셋.nunique()
#2. 히스토그램 그리기
- 데이터셋. hist(옵션들)
-옵션1 : figsize = 그래프의 크기
-옵션2 : bins = 막대의 개수
- 왜도 : 분포의 치우침을 나타냄
=> 양수 : 왼쪽에 몰린 형태
=> 음수 : 왼쪽에 몰린 형태
=> 구하는 식 : 데이터변수. skew()
-첨도 : 분포의 몰린 정도(뾰족함)을 나타냄
: 3보다 클 경우 정규분포보다 납작
: 3보다 작을 경우 정규분포보다 뾰족
사용방법 : 데이터셋.kurt()
ex) df.kurt()
#3. seaborn을 통한 그래프 그리기
#3-1) displot
= sns.displot(data= 데이터셋, x='변수')
옵션1. kde : 밀도함수 측정하여 부드러운 곡선
옵션2. rug : 데이터의 빈도수
|
||
일반적인 히스토그램 sns.displot(data=df, x='mpg') |
kde 옵션 추가 sns.displot(data=df, x='mpg', kde=True)
|
rug 옵션 추가 sns.displot(data=df, x='mpg', kde=True, rug=True)
|
#3-2) kdeplot / rugplot
= sns.kdeplot(data= 데이터셋, x='변수') / 커널 밀도
= sns.kdeplot(data= 데이터셋, x='변수') / 데이터 빈도수 or 분포
옵션1. shade : 색상채우기
옵션2. cut : x축의 단위
sns.kdeplot(data=df, x='mpg',shade=True, cut=10)
|
sns.rugplot(data=df, x='mpg')
|
#3-3) boxplot
= sns.boxplot(data= 데이터셋, x='변수') /박스 플롯
-> 이상치 값을 확인 가능
-> 분포 파악이 힘듦
ex)
#3-4) violinplot
= sns.violinplot(data= 데이터셋, x='변수')
-> 박스플롯을 같이 보여줌
-> 윗부분 = kdeplot (분포 파악 가능)
#3-4) 두 개 이상의 수치변수 시각화
산점도 : sns.scatterplot(data=데이터셋, x='변수' , y='변수' )
회귀선 : sns.regplot(data=데이터셋, x='변수' , y='변수' )
#옵션
#hue : 각 범주별 색상표시
산점도(x=weight, y=mpg, origin별 색상표시)
sns.scatterplot(data=df, x='weight', y='mpg', hue='origin') |
회귀선 그리기(x=weight, y=mpg)
sns.regplot(data=df, x='weight', y='mpg') |
서브플롯 그리기
서브플롯 : sns.lmplot(data=데이터셋, x='변수' , y='변수', col='범주별 기준' )
sns.lmplot(data=df, x='weight', y='mpg', hue='origin', col='origin', truncate=False)
# 잔차시각화
: sns.residplot(data=데이터셋, x='변수' , y='변수' )
ex)
# jointplot : 2개의 수치변수 표현하기(scatter+plot)
: sns.jointplot(data=데이터셋, x='변수' , y='변수' )
ex)
sns.jointplot(data=df, x='weight', y='mpg' )
#3-5) pairplot : 모든 변수끼리 짝을 지어 그래프 그리기
# 시간이 오래 걸림 -> 샘플 추출 권장
: sns.pairplot(data=데이터변수)
=>샘플 추출
#100개의 샘플 추출하기
df_sample=df.sample(100)
#3-6) lineplot : 선그래프
: sns.lineplot(data=데이터변수, x='변수' , y='변수' )
=> 그림자는 CI(신뢰구간)을 의미
#4. 관계형 함수
#4-1 relplot : 수치형 변수간의 관계 (relation)
: sns.relplot(data=데이터변수, x='변수' , y='변수' )
ex)
sns.relplot(data=df, x="model_year", y='mpg', col='origin', hue='origin')
#4-2 상관분석
# 상관계수 히트맵으로 보여주기
1단계. 상관계수 데이터셋 만들기
=> 데이터셋= 데이터셋.corr()
2단계. heatmap 데이터로 넣기
=> sns.heatmap(데이터셋)
#옵션
# annot : 상관계수 표시
# vmax : 상관계수 최대 값
# vmin : 상관계수 최소 값
# cmap : 색상테마
ex)
sns.heatmap(corr,annot=True, cmap="coolwarm", vmax=1, vmin=-1, mask=mask)
'데이터 분석 > 파이썬' 카테고리의 다른 글
[나도코딩] 데이터 분석 및 시각화 - matplotlib 요약 (0) | 2023.04.12 |
---|---|
[나도코딩] 데이터 분석 및 시각화 - Pandas 요약 (0) | 2023.04.12 |
5-4) 범주형 변수 분석 (0) | 2023.03.29 |
5-2) 탐색적 데이터 도구 : pandas_profiling / sweetviz (0) | 2023.03.26 |
5-1) Pandas 기초와 데이터요약 (0) | 2023.03.25 |