빅분기 실기 | 2회 기출 유형 풀이 작업형 2

2022. 12. 1. 13:44·빅데이터분석기사/실기

[Tutorial🔥] T2 2회 기출유형 Python

 

[Tutorial🔥] T2 2회 기출유형 Python

Explore and run machine learning code with Kaggle Notebooks | Using data from multiple data sources

www.kaggle.com


코드

# 분석에 필요하지 않은 컬럼 제거
id=X_test['ID']
X_train.drop(columns='ID',inplace=True)
X_test.drop(columns='ID',inplace=True)
y_train.drop(columns='ID',inplace=True)

# 스케일링 - 수치형 변수
from sklearn.preprocessing import MinMaxScaler
val=[['Customer_care_calls','Customer_rating','Cost_of_the_Product','Prior_purchases','Discount_offered','Weight_in_gms']]
scaler=MinMaxScaler()
for i in val:
    X_train[i]=scaler.fit_transform(X_train[i])
    X_test[i]=scaler.transform(X_test[i])

# 라벨 인코딩 - 명목형 변수
from sklearn.preprocessing import LabelEncoder
val=['Warehouse_block','Mode_of_Shipment','Product_importance','Gender']
encoder=LabelEncoder()
for i in val:
    X_train[i]=encoder.fit_transform(X_train[i])
    X_test[i]=encoder.fit_transform(X_test[i])
    X_train[i]=X_train[i].astype('category')
    X_test[i]=X_test[i].astype('category')

# 더미 변환
X_train=pd.get_dummies(X_train)
X_test=pd.get_dummies(X_test)

# 검증 데이터 분리
from sklearn.model_selection import train_test_split
X_TRAIN,X_VALID,Y_TRAIN,Y_VALID=train_test_split(X_train,y_train,test_size=0.2)

# 모델 생성1(RF)
from sklearn.ensemble import RandomForestClassifier
model1=RandomForestClassifier()
model1.fit(X_TRAIN,Y_TRAIN)
pred1=model1.predict_proba(X_VALID)

# 모델 생성2(LR)
from sklearn.linear_model import LogisticRegression
model2=LogisticRegression()
model2.fit(X_TRAIN,Y_TRAIN)
pred2=model2.predict_proba(X_VALID)

# 모델 생성3(XGB)
from xgboost import XGBClassifier
model3=XGBClassifier()
model3.fit(X_TRAIN,Y_TRAIN)
pred3=model3.predict_proba(X_VALID)

# # 모델 성능 평가
# from sklearn.metrics import roc_auc_score
# print('RF',roc_auc_score(Y_VALID,pred1[:,1])) # 0.7385
# print('LR',roc_auc_score(Y_VALID,pred2[:,1])) # 0.7203
# print('XGB',roc_auc_score(Y_VALID,pred3[:,1])) # 0.7450

# 결과 제출
result=model3.predict_proba(X_test)
pd.DataFrame({'ID':id,'Reached.on.Time_Y.N':result[:,1]}).to_csv('00000.csv',index=False)

# # 결과 채점
# from sklearn.metrics import roc_auc_score
# predict=pd.read_csv('00000.csv')
# print(roc_auc_score(y_test['Reached.on.Time_Y.N'],predict['Reached.on.Time_Y.N'])) # 0.7265
반응형
저작자표시
'빅데이터분석기사/실기' 카테고리의 다른 글
  • 빅분기 실기 | 4회 기출 유형 풀이 작업형 1
  • 빅분기 실기 | 3회 기출 유형 풀이 작업형 1
  • 빅분기 실기 | 3회 기출 유형 풀이 작업형 2
  • 빅분기 실기 | 2회 기출 유형 풀이 작업형 1
dduniverse
dduniverse
  • dduniverse
    dduniverse
    dduniverse
  • 전체
    오늘
    어제
    • 분류 전체보기 (242)
      • Algorithm (123)
        • 알고리즘 이론 (8)
        • 백준 (19)
        • 프로그래머스 (83)
        • 구름 알고리즘 먼데이 챌린지 (13)
      • 빅데이터분석기사 (10)
        • 통계 (4)
        • 실기 (6)
      • KT에이블스쿨 (26)
      • FrontEnd (11)
        • React (5)
        • 기타 (6)
      • BackEnd (18)
        • Django (15)
        • Spring (3)
      • DS & ML (11)
        • Machine Learning (9)
        • Kaggle (2)
      • TIL (43)
        • python (22)
        • javascript (3)
        • 오류해결 (10)
        • 기타 (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 관리
    • 글쓰기
  • 링크

  • 인기 글

  • hELLO· Designed By정상우.v4.10.0
dduniverse
빅분기 실기 | 2회 기출 유형 풀이 작업형 2
상단으로

티스토리툴바