2유형 탬플릿에 대한 질문입니다
강의를 들으면서 여러 문제를 풀고 또 만들어서 해결하는 중인데
2유형 같은 경우에는 기본적인 탬플릿이 유지한 상태에서 문제에 따라서 조금만 변형하면 되는걸로 알고 있는데 제가 사용하는 탬플릿이 문제가 있을까요?
# gas_train.csv, gas_test.csv를 이용하시오.
# 학습 데이터의 총가스사용량을 종속변수로 사용하여
# 테스트 데이터의 총가스사용량을 예측하시오.
# 조건은 다음과 같다.
# 1. 문자형 변수는 원-핫 인코딩하시오.
# 2. 학습 데이터와 테스트 데이터는 동일한 방식으로 전처리하시오.
# 3. 모델은 RandomForestRegressor를 사용하시오.
# 4. 검증 데이터 비율은 20%로 하시오.
# 5. RMSE를 출력하시오.
# 6. 테스트 데이터 예측 결과를 result.csv로 저장하시오.
# 7. 제출 파일은 pred 컬럼만 포함하시오.
# 세팅
import pandas as pd
import numpy as np
from sklearn.ensemble import RandomForestRegressor
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
# 데이터 불러오기
train = pd.read_csv('gas_train.csv')
test = pd.read_csv('gas_test.csv')
# target 지정
target = '총가스사용량'
# X, y 분리
y = train[target]
X = train.drop(target, axis=1)
# id 컬럼 제거
if 'id' in X.columns:
X = X.drop('id', axis=1)
if 'id' in test.columns:
test_X = test.drop('id', axis=1)
else:
test_X = test.copy()
# train / test 합치기
data = pd.concat([X, test_X], axis=0)
# 원 핫 인코딩
data = pd.get_dummies(data)
# train / test 분리
X = data.iloc[:len(X), :]
X_test = data.iloc[len(X):, :]
# 학습용 / 검증용 데이터 분리
X_tr, X_val, y_tr, y_val = train_test_split(
X, y,
test_size = 0.2,
random_state = 42)
# 랜덤포레스트
model = RandomForestRegressor(random_state = 42)
model.fit(X_tr, y_tr)
# 검증 데이터 예측
val_pred = model.predict(X_val)
# rmse 계산
mse = mean_squared_error(y_val, val_pred)
rmse = np.sqrt(mse)
print('RMSE:', rmse)
# 다시 학습
model.fit(X, y)
# 테스트 데이터 예측
pred = model.predict(X_test)
# 파일 생성
result = pd.DataFrame({'pred':pred})
result.to_csv('result.csv', index = False)
답변 1
0
문제 없어 보입니다. 최종 예측은 일부러 전체 데이터 사용하신거죠?
랜덤 포레스트외 라이트 지비엠도 함께 준비 부탁드려요!
from sklearn.metrics import root_mean_squared_error 로
rmse 사용 가능해요 🙂
실제시험환경에서 작업형1,2,3의 문제풀이 순서
0
6
1
독립표본검정
0
13
2
tranform을 쓰라는 힌트는 어디서 얻을 수 있나요??
0
16
2
df.describe() 사용을 자제해야할까요?
0
20
2
shape 결과에 대한 문의
0
19
2
자료 문의
0
15
1
8 회귀 11번
0
17
2
심화 강의 관련 질문
0
20
2
빈도수 구하는 것 질문
0
16
2
커리큘럼을 따로 인쇄할 수 있는 방법이 있을까요?
0
27
1
작업형2 머신러닝 문제풀이 중 test 데이터 에러 문의
0
29
2
수강연장가능문의
0
31
2
59. 11회 기출 유형 작업형 1 - 문제2 관련
0
26
2
원핫인코딩 슬라이싱 결과
0
23
2
random_state 값이 궁금합니다!
0
31
2
수강기간 연장 가능 여부 문의드립니다
0
50
2
city 컬럼 삭제
0
33
2
3회 기출(작업형 2) 질문 있습니다!!
0
33
1
시험환경 질문 드립니다.
0
39
1
수강기간 연장 가능 여부 문의드립니다
0
58
2
문제2-2에서 유의한 변수에서 음수는 유의한지?
0
45
3
강의 만료 후 오프라인 저장 강의 수강 가능 여부
0
51
2
xgboost에 관해
0
54
2
빅데이터분석기사 작업2형
0
59
2





