코드 제출 질문
0
1.코드를 이렇게 작성했는데 시험환경에서 이 상태로 바꿀것 없이 그냥 제출 버튼 누르면 되는건가요?
2.원핫인코딩 진행시 데이터가 10,000개가 넘어가서 45초정도 걸리는데
레이블인코딩을 진행할시 코드는 df로 concat하고 그대로 레이블인코딩 진행 후 다시 나누어 주면 되나요?
import pandas as pd
train = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p2/flight_train.csv")
test = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p2/flight_test.csv")
# print(train.info())
target = train.pop('price')
# print(train.shape, test.shape)
df = pd.concat([train,test])
df = pd.get_dummies(df)
train = df.iloc[:10505,:]
test = df.iloc[10505:,:]
# print(train.shape, test.shape)
# 라벨인코더
# from sklearn.preprocessing import LabelEncoder
# cols = train.select_dtypes(include = 'object')
# for col in cols:
# le = LabelEncoder()
# train[col] = le.fit_transform(train[col])
# test[col] = le.transform(test[col])
# 데이터 분리
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=0)
# 랜덤포레스트
from sklearn.ensemble import RandomForestRegressor
rf = RandomForestRegressor(random_state = 0)
rf.fit(X_tr, y_tr)
pred = rf.predict(X_val)
# # LightGBM
# import lightgbm as lgb
# lg = lgb.LGBMRegressor(random_state = 0, verbose=-1)
# lg.fit(X_tr,y_tr)
# pred = lg.predict(X_val)
#평가지표 RMSE
from sklearn.metrics import root_mean_squared_error
rmse = root_mean_squared_error(y_val, pred)
# print(rmse)
# 원핫 + 랜포 = 3779.676969452687 선택
# 원핫 + LGB = 4216.406340322749
pred_final = rf.predict(test)
# 제출
submit = pd.DataFrame({'pred':pred_final})
submit.to_csv('result.csv',index=False)
pd.read_csv('result.csv')
답변 1
1
네 완벽합니다.
시험 데이터는 좀 더 작은 사이즈일거에요
레이블 인코딩을 합친다면 코드가 살짝 수정이 필요합니다. 예를들면 아래와 같습니다.
for col in cols: le = LabelEncoder() df[col] = le.fit_transform(df[col])
추가질문 합니다
0
7
1
시험환경 구름
0
9
1
2유형 질문드려요
0
7
1
RandomForest vs lgb
0
18
1
전처리 관련질문
0
12
2
작업형3 기출
0
12
1
유형2에서 데이터분할 생략 가능여부
0
20
2
9회 기출 유형3 질문
0
15
1
lgb 기초편
0
10
1
괄호 사용
0
15
1
작업형 2 데이터 전처리 질문
0
18
1
11회 기출 유형 작업형1 문제 3-1
0
14
0
예시문제 작업형2 (ver2023) 질문입니다
0
16
1
Data type에 따른 처리
0
15
2
데이터 전처리 관련
0
15
2
시험에서 문제 불러오기
0
18
2
2번문제 출력값 질문
0
21
2
pd.get_dummies()가 bool로 반환
0
18
2
대응표본검정 레빈
0
23
3
단일표본검정 문제 유형
0
23
2
[작업형 3] 6~7. 카이제곱 검정
0
22
2
9회 작업형3 문제 1-1
0
37
2
최종답안 계산 방식 질문
0
25
1
시험 치기 전 급하게 질문 사항
0
41
2





