빅분기 후기
빅데이터분석기사 후기(필기, 실기 공부방법, 합격률, 공부기간, 난이도체감 등)(1) :: 공기업 전산직을 위한 도서관
빅분기 실기 1유형 코드정리
빅데이터분석기사 실기 1유형 코드정리 (2) :: 공기업 전산직을 위한 도서관
빅분기 실기 3유형 코드정리
빅데이터분석기사 실기 3유형 코드정리(4) :: 공기업 전산직을 위한 도서관
우선 2유형에 들어가기전에 알아두면 좋을 것
분류 : 종속(목표변수) 남, 여 / 생존, 사망 - accuracy_score, fi1_socre , roc_auc_score / RandomForestClassifier
회귀 : 종속(목표변수) : 수치형, 연속형 / 가격, 수치 - RMSE , 결정계수 / RandomForestRegression
분류는 0,1,2 처럼 결과가 딱 나눠떨어지는거
회귀는 연속형자료
2유형을 공부하면서 유튜브 및 블로그 등을 참고하면서 정리한 코드입니다. 공부하실 때 참고하시고 도움이 되었으면 합니다. 아래 코딩은 실기체험환경 기준으로 작성됐습니다.
▶ 라벨인코딩
1. 데이터 로드 및 확인
2. 결측값 대체(최빈값), 라벨 인코딩
3. 데이터 분할
4. 모델링(분류)
5. 성능 평가
6. 테스트 데이터 예측
7. 결과 데이터 제출 & 확인
1. 데이터 로드 및 확인
import pandas as pd
train = pd.read_csv("data/customer_train.csv")
test = pd.read_csv("data/customer_test.csv")
2. 결측값 대체(최빈값), 라벨 인코딩
1) 결측값 대체
train.fillna(train['환불금액'].mode()[0],inplace=True)
test.fillna(test['환불금액'].mode()[0],inplace=True)
# print(train.info()) ....중간확인
# print(test.info()) ....중간확인
2) 라벨 인코딩
from sklearn.preprocessing import LabelEncoder
le = LabelEncoder()
le.fit(total['주구매지점'])
total['주구매지점'] = le.transform(total['주구매지점'])
le.fit(total['주구매상품'])
total['주구매상품'] = le.transform(total['주구매상품'])
3. 데이터 분할
from sklearn.model_selection import train_test_split
x=train.drop(columns=['성별','회원ID'])
y=train['성별']
x_train, x_test, y_train, y_test = train_test_split(x,y,test_size=0.2,random_state=2024)
4. 모델링(분류)
from sklearn.ensemble import RandomForestClassifier #분류
# from sklearn.ensemble import RandomForestRegressor #회귀
rfc=RandomForestClassifier(n_estimators=150, max_depth=20, random_state=2024)
rfc.fit(x_train,y_train)
pred1=rfc.predict(x_test) #pred 1= train 데이터에 대한 예측 값
5. 성능 평가
from sklearn.metrics import roc_auc_score, accuracy_score
roc=roc_auc_score(y_test , pred1)
#acc=accuracy_score(y_test , pred1)
# print('roc:',roc) #0.602354 ....중간확인
# print('acc:',acc) #0.664285 ....중간확인
6.테스트 데이터 예측
test_x=test.drop(columns=['회원ID'])
pred2=rfc.predict(test_x)
# print(pred2) ....중간확인
7.결과 데이터 제출 & 확인
pd.DataFrame({'pred':pred2}).to_csv('result.csv',index=False)
#result=pd.read_csv('result.csv') ....최종확인
#print(result) ....최종확인
▶ 원핫인코딩
1. 데이터 로드 및 확인
2. 원핫인코딩_겟더미
3. 데이터 분할
4. 모델링(분류)
5. 성능 평가
6. 테스트 데이터 예측
7. 결과 데이터 제출 & 확인
1. 데이터 로드 및 확인
import pandas as pd
train = pd.read_csv
test = pd.read_csv
2. 원핫인코딩_겟더미
target = train.pop('성별')
train = pd.get_dummies(train)
test = pd.get_dummies(test)
3. 데이터 분할
from sklearn.model_selection import train_test_split
x_train, x_test, y_train, y_test = train_test_split (train, target, test_size=0.2, random_state=2024)
4. 모델링(분류)
from sklearn.ensemble import RandomForestClassifier #분류
# from sklearn.ensemble import RandomForestRegressor #회귀
rfc=RandomForestClassifier(n_estimators=150, max_depth=20, random_state=2024)
rfc.fit(x_train,y_train)
pred1=rfc.predict(x_test) #pred 1= train 데이터에 대한 예측 값
5. 성능 평가
from sklearn.metrics import roc_auc_score, accuracy_score
roc=roc_auc_score(y_test , pred1)
#acc=accuracy_score(y_test , pred1)
# print('roc:',roc) #0.602354 ....중간확인
# print('acc:',acc) #0.664285 ....중간확인
6.테스트 데이터 예측
test_x=test.drop(columns=['회원ID'])
pred2=rfc.predict(test_x)
# print(pred2) ....중간확인
7.결과 데이터 제출 & 확인
pd.DataFrame({'pred':pred2}).to_csv('result.csv',index=False)
#result=pd.read_csv('result.csv') ....최종확인
#print(result) ....최종확인
사실상 초반부부만 다르게하고 나머지는 같게해도 무방
최소 30점이상을 맞기(0점 안맞기 위해)
☆★ 인코딩->분류->모델링->제출 ☆★
일련의 과정을 꼭 파악하고 푸는것이 큰 도움이 됩니다.
'자격증' 카테고리의 다른 글
빅데이터분석기사 실기 3유형 코드정리(4) (1) | 2025.01.15 |
---|---|
빅데이터분석기사 실기 1유형 코드정리(2) (2) | 2025.01.09 |
빅데이터분석기사 후기(필기, 실기 공부방법, 합격률, 공부기간, 난이도체감 등)(1) (7) | 2025.01.04 |
빅분기 실기 9회 합격 (0) | 2024.12.21 |
자격증 현황 (2) | 2024.12.15 |