inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

예시문제 작업형2 신버전 문의드립니다.

해결된 질문

156

서수영

작성한 질문수 5

0

 

안녕하세요 예시문제 작업형2 신버전 풀어보았는데

평가값은 0.615

pred는 아래와 같이 나왔는데 맞게나온걸까요?

 

그리고 아래와 같이 풀어보았는데

혹시 아래와 같은 풀이에서

#원핫인코딩과 레이블인코딩을 넣을수있을까요?

넣으려면 어떤 문장으로 넣어야될까요? (오류가 뜨더라구요ㅠ)

 

#아니면 굳이 인코딩 안하고 아래처럼 제출해도될까요?


#데이터불러오기

import pandas as pd

train = pd.read_csv("data/customer_train.csv")

test = pd.read_csv("data/customer_test.csv")

# 확인/전처리/분리/모델/평가/예측/저장

# roc_auc(pred=predict_proba) / 양성(1)값=남자/ 분류모델

#확인

# print(train.shape, test.shape)

#print(train.head())

#print(test.head())

# print(train.info())

# print(test.info())

# print(train.isnull().sum())

# print(test.isnull().sum())

 

#전처리(결측값제거/문자제거/인코딩)

##결측값제거

train['환불금액'] = train['환불금액'].fillna(0)

test['환불금액'] = test['환불금액'].fillna(0)

##문자제거

cols=train.select_dtypes(include='object').columns #문자만

cols

train = train.drop(cols,axis=1) #문자제거

test = test.drop(cols,axis=1)

##인코딩

 

 

 

 

#분리

from sklearn.model_selection import train_test_split

X_tr, X_val, y_tr, y_val = train_test_split(

train.drop('성별',axis=1), train['성별'], test_size=0.2, random_state=2022

)

 

 

#모델

from sklearn.ensemble import RandomForestClassifier

model = RandomForestClassifier()

model.fit(X_tr,y_tr)

pred = model.predict_proba(X_val)

 

 

#평가

from sklearn.metrics import roc_auc_score

print(roc_auc_score(y_val, pred[:,1]))

 

 

#예측

pred = model.predict_proba(test)

submit = pd.DataFrame({

'pred':pred[:,1]

})

 

 

#저장

submit.to_csv('28381.csv', index=False)

print(pd.read_csv('28381.csv'))

 

python 머신러닝 빅데이터 pandas 빅데이터분석기사

답변 1

0

퇴근후딴짓

  1. 작업형2는 맞게라는 표현을 쓰기는 조금 어려울 것 같아요:) 큰문제는 없어 보입니다.

  2. 예시문제 작업형2(신 버전) 아래쪽에 제가 코드가 있어요! 휠을 조금만 내려보시겠어요?

    하나는 심플한 코드 하나는 레이블 인코딩을 적용한 코드입니다. 참고 부탁드려요!

더불어 위 코드에서는 범주형 데이터를 아래와 같이 제거해버려 인코딩할 범주형 데이터가 없는 것 같아요!

##문자제거

cols=train.select_dtypes(include='object').columns #문자만

cols

train = train.drop(cols,axis=1) #문자제거

test = test.drop(cols,axis=1)

 

레이블 인코딩 방법

for col in cols:
	le = LabelEncoder()
	train[col] = le.fit_transform(train[col])
	test[col] = le.transform(test[col])

질문 드립니다.

0

37

2

강의 내용 관련 질문드립니다~

0

34

2

수강 연장 문의

0

31

1

강의자료 일괄 다운로드

0

41

2

수강기간 연장 문의드립니다

0

28

1

list 문제 질문드립니다~

0

28

2

빅분기 실기 12회 재도전

0

39

1

강의 기간 연장 가능여부 검토 요청건

0

30

1

수강기간 연장 문의 드립니다

0

36

2

수강기간 연장 문의드립니다

0

47

2

질문이요

0

51

2

수강기간 연장 문의드립니다.

0

49

2

문제 3-2 질문드립니다

0

43

2

수강기간 연장 문의 드립니다.

0

58

2

변수, 칼럼 , df 구분

0

48

2

수강기간 연장 문의드립니다.

0

49

2

수강기간 연장 문의

0

46

2

수강기간 연장 문의드립니다.

0

40

2

수강기한 연장 문의

0

76

2

수강기간 연장 문의드립니다

0

57

2

결정트리에서 적절한 깊이 선택 후 시각화 과정에서 학습 데이터만 사용하는 이유

0

44

2

수강기간 연장 문의드립니다.

0

70

2

수강연장 문의

0

76

2

수강연장문의

0

53

2