import pandas as pd
import numpy as np
import time
import matplotlib.pyplot as plt
from sklearn.neighbors import KNeighborsClassifier
from google.colab import drive
drive.mount('/content/drive')
file_name = '/content/drive/My Drive/Data Mining/seoul_0.csv'
data = pd.read_csv('seoul_0.csv', encoding='cp949')
df = pd.DataFrame(data, columns=['키', '몸무게', '학년', '수축기', '이완기'])
# print(df.shape)
df.head(3)
인코딩
-
encoding='ISO-8859-1'
-
필요 없는것도 있음 (숫자로만 구성된 csv)
- from google.colab import drive 주석처리
- drive.mount( … ) 코드도 주석처리
- pd.read_csv() 안의 경로 수정
- print()문 추가하기
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.5, random_state=0)
clf = clf.fit(X_train, y_train) # x, y 같이
y_pred = clf.predict(X_test) # x 만
prob = a.predict_proba(X_test) # x 만 (각각의 카테고리에 대한 확률 구하기)
# 1학년일 확률,4학년일 확률 (0.2, 0.8)
clf.score(X_test,y_test) # x, y 같이
print("Number of mislabled points out of a total %d points : %d " %
(X_test.shape[0], # test data size
(y_test != y_pred).sum())) # wrong count
null 이 있는 행 제거
df_drop_row = df.dropna() # null이 있는 행 제거( axis 지정 X)
df_drop_row.isnull().sum() # 확인
ex ) 건축년도의 값이 null 인 행 제거
nan_idx = df[df['건축년도'].isnull()].index
df = df.drop(nan_idx)
df['건축년도'].unique()
ex ) 건축년도가 0인 값을 가지고 있는 행
no_year_df = df_drop_row[df_drop_row['건축년도']==0].index
df_drop_row = df_drop_row.drop(no_year_df) # 행 제거( axis 지정 X)
특정 열 제거
df1 = df1.drop(columns=['품목별'])
null이 있는 열 제거( axis 지정 )
df_drop_col = df.dropna(axis = 1)
''' 데이터 분포 확인'''
grade = data['학년']
grade.value_counts()
''' 구성 확인 '''
df.describe() # 전체
df[‘특정행’].uniqe()
# data type 확인 (데이터 타입 확인)
df.dtypes
import time
start_time = time.time()
clf = MLPClassifier().fit
end_time = time.time()
print("훈련 속도 : ", end_time - start_time )
round(n,3)