Search

#015 #구글코랩 데이터 시각

연역법 추론과 귀납적 추론의 관계

빅 데이터의 시대에서 많은 데이터를 기반으로 일반화 과정을 거치게 된다. 이 부분으로 인해 귀납적인 방식의 접근법이 강화 되는 것 처럼 보이나, 연역법 추론의 일반화로 부터의 이론과 가설 과정이 있어야지 선순환이 이어진다.

귀납적 방법론

분류 분석 classfication

지도 학습은 답을 정해 놓고 찾아나가는 과정

예측 분석

비지도 학습은 답이 없는 상황에서 찾아나가는 과정

실습 환경 기반 구축

구글 코랩 기반의 파이썬 실습

seaborn 라이브러리 추가

!pip install seaborn
Java
복사

자주 사용하게 될 라이브러리

분포에 대한 시각화

라이브러리의 팁 데이터 로드

‘tips’ 데이터 변수 종류

히스토그램

연속형 변수의 값을 기준으로 구간을 정의한 후, 각 구간에 속한 레코드의 수 막대그래프로 표현

히스토그램 실습1

seaborn 라이브러리의 histplot 함수 활용
h1 = sb.histplot(data=tipsData, x='tip', bins=10) h1.set_xlabel("Tip($)")
Java
복사
[data=tipsData] ‘tipsData’를 데이터로 활용 [x=’tip’] ‘tip’ 구간 정의 [bins = 10] → 막대그래프수 10개

히스토그램 실습2

tipsData['tip_percent'] = (tipsData['tip'] / tipsData['total_bill']) * 100 h2 = sb.histplot(data=tipsData, x='tip_percent', kde=True, bins=20) h2.set_xlabel("Tip/Total Bill(%)")
Java
복사
kde=true 커널 밀도 함수 추정

boxplot

사분위수를 기준으로 상자와 중앙선 표시
최댓값, 최솟값, 이상치 등 극닥성 파악가능
b1 = sb.boxplot(x='sex', y='tip', data=tipsData) b1.set_xlabel("Sex") b1.set_xlabel("Tip($)")
Java
복사
사분위수(quartile)를 기준으로 상자와 중앙선 표시 최댓값, 최솟값, 이상치등 극단성 파악 가능

바이올린

v1 = sb.violinplot(x='sex', y='tip', data=tipsData) v1.set_xlabel("Sex") v1.set_ylabel("Tip($)")
Plain Text
복사

산점도 (sctter plot)

서로 다른 두 변수의 값을 촤표로 점으로 표시한다.
두 변수의 관계 파악가능??
선형? OR 비선형?
seaborn 라이브러리
// relplot 활용해서 두 데이터의 관계 확인하기 s1 = sb.relplot(data=tipsData, x = 'total_bill', y = 'tip') s1.set_xlabels('Total Bill($)') s1.set_ylabels('Tip($)')
Java
복사

선형 추세선이 포함된 산점도

lm2=sb.lmplot(data=tipsData, x = 'total_bill', y = 'tip', hue = 'smoker') lm2.set_xlabels('Total Bill($)') lm2.set_ylabels('Tip($)')
Java
복사

상관 계수 히트맵

연속 변수의 값을 기준으로 상대적인 대소관계를 표현
상관 계수 (correlation coefficient)로 관계 표현