본문 바로가기

빅데이터 분석기사

2과목 정리

문제

 

평가방식이 f1_score 이므로 회귀 아니라 분류 모델임

2유형의 고정 문제 풀이 단계

1~5단계로 구성, import ~ train, test 가 각각 무엇을 의미하는지는 0단계로 생각하고 5단계까지만 하면 40점 겟!

-------------------------------------------------------------------------------------------------------------------------------------------

2 유형  
0단계. train, test 데이터 지정

 

import pandas as pd

train = pd.read_csv("파일명".csv)

test = pd.read_csv("파일명".csv)

 

------------------------------------------------------------------------------------------------------------ (위의 과정 생략 후step1 시작)

step1. [EDA 순서 - 쉐인딩벨히is팝]
shape
info()
describe(1, 2: include='O')
value_counts
hist()
isnull().sum()
target = pop('제외할 컬럼명') => pop은 step2에서 해도 됨

 

step2. 데이터 전처리 - target 정의, 전타팝, 원핫인코딩

target은 train 데이터임, 원핫 인코딩 진행 후 shape 확인해야 함
print 문을 두 번써서 원핫 인코딩이 잘 이뤄졌나 확인

step3. 검증 데이터 분할 - 데이터 전처리 후 검증 데이터분할 해야 함 - 여기서도 shape 함수 사용

train_test_split(train, target, test_size=0, random_state=0)                                                          #내가 기억해야 할 부분 ㅠ

train_test_split() 함수 안에 train, target, test_size, random_state 총 4가지가 들어감 ㅠ

 

step4. 머신러닝 학습 및 평가

 

 

rf = RandomForestClassifier(random_state=0) 임을 작성

rf.fit(X_tr, y_tr)

pred = rf.predict(X_val) pred 값에 검증 데이터 넣어주기!

4, 5번 step에서 pred 값 바꿔줌

4번에서는 X_val

5번에서는 test

 

step5. test 예측 및 파일 생성

# 마지막 명령어는 to_csv 암기 submit.to_csv

#submit 이라는 데이터 프레임을 만듦, 

 

pred = rf.predict(test) 라고 써주기, pred는 predict 함수를 사용한 값이라는 걸 잊지말자, submit 이라는 데이터 프레임을 만듦

 

[시험 환경에서 dir 이용하기]

__all__ 모듈 목록 확인 가능함 여기서 모듈이란?

"__all__" 사용 방법

 

import sklearn 써주고, print(sklearn.__all__) 하면 sklearn에 속하는 모든 모듈 이 나옴!

dir 은 자동완성 기능 대안으로 사용 가능

print(dir(pd) 라고 하면 pd 안에 있는 함수 나옴 print(help(pd.isnull)) 해주면 됨

 

 


[수치형 활용]
from sklearn.model_selection import train_test_split
X_tr, X_val, y_tr, y_val = train_test_split(train, target, test_size=0.2, random_state=2024)
X_tr,shape, X_val.shape, y_tr.shape, y_val.shape

from sklearn.ensemble import RandomForestRegressor
rf = RandomForestRegressor() 
rf.fit(X_tr, y_tr)  #X_tr과 y_tr 데이터를 사용하여 랜덤 포레스트 회귀 모델을 학습
pred = rf.predict(X_val) #학습된 모델을 사용하여 X_val 데이터에 대한 예측 값을 계산

[TEST 예측]
pred = rf.predict(test)
result = pd.DataFrame({
'pred' : pred
})
result.to_csv("result.csv", index=False) #to_csv가 함수임
데이터프레임의 메서드 중 하나입니다. 이 메서드는 데이터프레임을 CSV 파일로 저장하는 역할

pd.read_csv("result.csv")

y = pd.read_csv("y.csv") #rmse(예측된결과, 실제값)
rmse(y, pred)

#cf) y_true는 주택의 실제 가격을 나타내는 것이 될 것입니다. 따라서 y_true는 모델이 예측하고자 하는 정답값입니다.
즉, y_true는 모델이 훈련(training)되거나 평가(evaluation)되는 과정에서 비교 대상이 되는 실제 결과값을 의미

 

평가 지표에 따라 회귀/분류 가능
회귀, MAE, MSE, RMSE, RMSLE, R2(이 아이만 1에 가까울수록 좋다.), E 오류 : 작을수록 좋다
분류 : Accuracy, Precision, Recall, F1 (이 친구까지는 predict), ROC-AUC는 predict_proba 사용

'빅데이터 분석기사' 카테고리의 다른 글

3유형 기출 문제 - 1  (0) 2024.06.19
1유형 기출 문제  (0) 2024.06.18
[실기] 1유형 정리 - 3  (0) 2024.06.16
[실기] 1유형 정리 - 3  (1) 2024.06.16
[실기] 1유형 정리 - 2  (0) 2024.06.16