데이터 불러오고 나누기


Pandas

Pandas는 구조화된 데이터를 쉽고 빠르게 가공할 수 있는 풍부한 자료 구조와 함수를 제공하는 라이브러리이다. Pandas를 이용하면 R언어처럼 DataFrame이라는 행과 열을 가진 2차원 표 모양의 자료구조를 사용할 수 있으며, NumPy의 고성능 배열 계산 기능과 스프레드 시트, SQL과 같은 RDBMS의 유연한 데이터 조작 기능을 사용할 수도 있다. 또 고성능 시계열 데이터 처리, 금융 데이터 등에 매우 적절한 도구를 제공하기도 한다.

데이터 전처리

데이터 셋

import pandas as pd                 # Pandas는 보통 pd 컨벤션을 쓴다.
from sklearn import preprocessing   # sklearn에서 전처리 모듈 불러오기
from sklearn.model_selection import train_test_split

data = pd.read_csv("./data/mushroom.csv") # csv 불러오기
data.head(10)                             # 10줄 미리보기!

"""처음 상태의 데이터셋에는 문자열이 많이 들어있다. 이를 분석에 용이한 숫자 형테의 더미 데이터로 바꿔주자."""

label_encoder = preprocessing.LabelEncoder()
for col in data.columns:
  data[col] = label_encoder.fit_transform(data[col])

train, test = train_test_split(data, test_size = 0.2)  # 20%씩 잘라 넣기.

train_y = train['class'] # 데이터의 'class' 필드가 종속 변수
train_x = [x for x in train if 'class' not in x] # class가 아닌 필드가 독립 변수

test_y = test['class'] # 마찬가지
test_x = [x for x in train if 'class' not in x]

끝! Pandas가 너무 편리하다!