인프런 커뮤니티 질문&답변
작업형2번 푸는 것에있어서
작성
·
25
0
전처리부분은 어떻게 나올지 모르겠지만 여태까지 난이도로나온다면 (결측치는 나오는대로 한다고 가정하겠습니다)
강의를 다보고 연습문제도 다해보았습니다 작업형3도 다돌려보았고 작업형1이 잘 안되어서 남은시간동안 작업형1에 집중해보려고 여쭙니다
이정도 치면 40점을 맞을 수 있다고생각하는데 어떻게 생각하실까요?ㅠ
(타겟값분리)
target=train.pop('종속변수')
(데이터합쳐서 원핫인코딩 후 분해)
n1=len(train)
df=pd.concat([train,test])
df=pd.get_dummies(df)
train=df.iloc[:n1]
test=df.iloc[n1:]
데이터분할
from sklearn.model_selection import train_test_split
X_tr,X_val,y_tr,y_val=import train_test_split(train,target,test_size=0.2,random_state=0)
X_tr.shape,X_val.shape,y_tr.shape,y_val.shape
#평가지표
from sklearn.metrics import root_mean_squared_error # f1_score , roc_auc_score 등등나오는대로
#랜덤포레스트
from sklearn.ensemble import RandomForestClassifier # 분류
#from sklearn.ensemble import RandomForestRegressor #회귀
rf=RandomForestClassifier()
rf.fit(X_tr,y_tr)
pred=rf.predict(X_val)
print(root_mean_squared_error(y_val,pred) # macro일때는 average='macro'
#lightgbm
import lightgbm import lgb
lgb=lgb.LGBMClassifier(random_state=0,verbose=-1) # 회귀면 Regressor
lgb.fit(X_tr,y_tr)
pred=lgb.predict(X_val)
print(root_mean_squared_error(y_val,pred)
test예측
pred=rf.predict(test) #rf와lgbm중 선택
submit=pd.DataFrame({'pred':pred)} # roc_auc인경우 pred[,:1]
submit.to_csv('result.csv',index=False)
print(pd.read_csv('result.csv'))






네 맞습니다! 감사합니다 비전공자인데 강의정말 잘들었습니다 합격하고오겠습니다!