Model Selection 모듈¶ 학습/테스트 데이터 세트 분리 - train_test_split()¶ parameter test_size shuffle: 데이터 분리 전에 미리 섞을지 결정, 디폴트는 True random_state train_test_split의 반환값은 튜플 형태 In [1]: from sklearn.datasets import load_iris from sklearn.tree import DecisionTreeClassifier from sklearn.model_selection import train_test_split from sklearn.metrics import accuracy_score import pandas as pd In [4]: dt_clf = DecisionT..
사이킷런의 기반 프레임워크 익히기¶ Estimator 이해 및 fit( ), predict( ) 메서드¶ 분류 알고리즘을 구현한 클래스: Classifier, 회귀 알고리즘을 구현한 클래스 Regressor 이들 Classifier와 Regressor를 합쳐서 Estimator 클래스라고 부름, 즉 지도학습의 모든 알고리즘을 구현한 클래스를 통칭 Estimator 클래스는 fit()과 predict()를 내부에서 구현함 비지도학습을 구현한 클래스도 대부분 fit()과 transform()을 적용, but fit()은 학습의 의미가 아니라 입력데이터 형태에 맞춰 데이터를 변환하기 위한 사전 구조 맞추는 작업용 실제 작업은 transform()이 수행 내장된 예제 데이터세트¶ fetch 계열의 명령은 데이터..
붓꽃 품종 예측하기 ¶ sklearn.datasets 모듈: 사이킷런에서 자체 제공하는 데이터 셋 생성¶ sklearn.tree 모듈: 트리 기반 ML알고리즘(의사 결정 트리)을 구현한 클래스 모임 sklearn.model_selection 모듈: 학습데이터와 검증데이터, 예측데이터로 데이터를 분리하거나, 최적의 하이퍼 파라미터로 평가하기 위한 다양한 모듈의 모임 ¶ 1. 라이브러리 정의¶ In [2]: import sklearn from sklearn.datasets import load_iris from sklearn.tree import DecisionTreeClassifier from sklearn.model_selection import train_test_split 2. 데이터 불러오기¶ In..
apply lambda 식으로 데이터 가공¶ 칼럼에 일괄적으로 데이터 가공을 하는 것이 속도 면에서 빠르고 복잡한 데이터 가공이 필요할 경우 이용 In [2]: def get_square(a): return a**2 print('3의 제곱은:', get_square(3)) 3의 제곱은: 9 lambda는 이런 함수 선언과 함수 내의 처리를 한 줄의 식으로 쉽게 변환하는 식임 : 로 입력 인자와 반환될 입력 인자의 계산식(반환값)을 분리함 여러 개의 값을 입력 인자로 사용해야 할 때, map( )함수과 같이 씀 In [3]: lambda_square = lambda x : x ** 2 print('3의 제곱은:', lambda_square(3)) 3의 제곱은: 9 In [5]: a = [1, 2, 3] s..
결손 데이터 처리하기¶ 머신러닝은 NaN 값을 처리하지 않으므로 다른 값으로 대체해야 함 결손 여부 확인: isna( ) 다른 값으로 대체: fillna( ) In [1]: import pandas as pd titanic_df = pd.read_csv('./titanic_train.csv') titanic_df Out[1]: PassengerId Survived Pclass Name Sex Age SibSp Parch Ticket Fare Cabin Embarked 0 1 0 3 Braund, Mr. Owen Harris male 22.0 1 0 A/5 21171 7.2500 NaN S 1 2 1 1 Cumings, Mrs. John Bradley (Florence Briggs Th... female ..
정렬, Aggregation 함수, GroupBy 적용¶ sort_values( )¶ 주요 파라미터: by='칼럼명', ascending=True(기본 오름차순), inplace=False(호출한 df는 그대로 유지하면서 정렬된 df를 결과로 반환) In [1]: import pandas as pd titanic_df = pd.read_csv('./titanic_train.csv') titanic_df Out[1]: PassengerId Survived Pclass Name Sex Age SibSp Parch Ticket Fare Cabin Embarked 0 1 0 3 Braund, Mr. Owen Harris male 22.0 1 0 A/5 21171 7.2500 NaN S 1 2 1 1 Cuming..