2유형 탬플릿에 대한 질문입니다
0
강의를 들으면서 여러 문제를 풀고 또 만들어서 해결하는 중인데
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 사용 가능해요 🙂
수강기간 연장 문의드립니다!
0
4
1
2회 기출유형(작업형1) Warning
0
22
2
describe()
0
37
2
수강기간 연장 문의
0
64
2
빅데이터분석기사 실기 인코딩
0
59
2
수강기간 연장문의
0
63
2
수강 기간 연장 문의 드립니다.. 부탁드립니다 ㅠㅠ
0
50
2
작업형2와 3의 목적
0
40
1
기출9회(작업형 1의 2번문제)
0
40
2
수강 기간 연장 문의 드립니다.
0
57
2
수강 연장 문의드립니다
0
66
2
수강 연장 문의드립니다.
0
52
2
재결제 가능할까요...
0
59
1
비전공자 빅분기 실기 공부방법
1
69
2
강의일시정지 요청합니다
0
63
2
강의 연장 가능할까요 ㅠㅠ
0
58
2
수강 연장 문의드립니다.
0
63
2
수강기간 연장 가능 여부 문의드립니다.
0
83
1
수강 기간 연장 가능 여부 문의드립니다
0
85
2
강의 업데이트
0
80
2
수강 연장 문의드립니다.
0
100
2
강의 연장 문의
0
76
2
수강 신청 연장 문의드립니다.
0
88
2
작업형 1번문제... 환경관련
0
67
2





