강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

양지은님의 프로필 이미지
양지은

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

예시문제 작업형2(ver. 2025) 🆕

구름환경 2유형

해결된 질문

작성

·

43

0

안녕하세요 퇴근후딴짓님

크게 다르게 하지 않은것 같은데 저는 랜덤포레스트 #821.0553076611657 이렇게 나왔는데

퇴근후딴짓님은 83636125.어쩌고 엄청 큰 숫자잖아요..

제 코드에 어떤 문제가 있나요??ㅠㅠ

#데이터전처리

target = train.pop('총구매액')

train['환불금액']=train['환불금액'].fillna(0)

test['환불금액']=train['환불금액'].fillna(0)

train = train.drop('주구매상품', axis=1)

test = test.drop('주구매상품', axis=1)

train = pd.get_dummies(train)

test= pd.get_dummies(test)

#분할

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)

X_tr.shape, X_val.shape, y_tr.shape, y_val.shape

 

#머신러닝

from sklearn.metrics import mean_squared_error

def rmse(y_true, y_pred):

return mean_squared_error(y_true, y_pred)**0.5

from sklearn.ensemble import RandomForestRegressor

 

rf = RandomForestRegressor(random_state=0)

rf.fit(X_tr, y_tr)

pred = rf.predict(X_val)

print(rmse(y_val, pred)) #821.0553076611657

 

pred = rf.predict(test)

result = pd.DataFrame({

'pred':pred

})

result.to_csv("result.csv", index=False)

print(pd.read_csv("result.csv"))

 

답변 2

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

전혀 문제 없습니다.:)

제가 영상에 빠르게 자막처리 할게요

800대 점수가 나오는 것이 정상입니다.

 

작업형2가 새로 나오면서 주최측에서 안내 없이 데이터를 3번이나 변경하다보니 그사이 촬영이 되어 그렇습니다.

0

안녕하세요, 인프런 AI 인턴입니다. 양지은님께서 작성하신 랜덤포레스트 모델 관련 질문에 답변드리겠습니다.

현재 말씀하신 RMSE 값 차이는 전처리 과정이나 데이터의 다른 부분에서 발생할 가능성이 높습니다. 코드의 주요 부분을 차근차근 검토해 보겠습니다.

피드백 및 검토 사항:

  1. 결측치 처리:

    • ‘환불금액’ 방식을 잘 설정하신 것 같습니다. 평균 값이나 0으로 채우는 방법은 데이터 특성에 무관하다면 괜찮습니다.
  2. 데이터 프레임 처리:

    • test['환불금액']=train['환불금액'].fillna(0)에서 ‘test’ 데이터셋에 ‘환불금액’의 결측치를 채울 때 train이 아닌 test 데이터를 사용해야 합니다. test['환불금액']=test['환불금액'].fillna(0)로 수정하세요.
  3. 원핫 인코딩:

    • pd.get_dummies를 잘 사용하셨습니다. 다만 train과 test가 같은 열을 가져야 하므로, 인코딩 후에 두 데이터프레임의 열 확인이 필요합니다.
  4. 데이터 분할 오류:

    • train_test_split 분할 시 train target에서 쉼표(,)가 빠져 있는 것으로 보입니다. train, target으로 수정해야 합니다.
  5. 평가지표:

    • RMSE 계산 함수인 rmse는 잘 작성되어 있습니다. 이를 활용하여 정확히 RMSE를 출력하고 계신 것입니다.
  6. 벡터와 미리보기:

    • RMSE 비율 차이가 있는 경우, 데이터 특성이나 스케일링 차이가 영향을 미칠 수 있습니다. 필요하다면 데이터의 스케일을 조정하거나, 다른 처리 방법을 검토해 보세요.

이와 관련된 유사한 문제 해결 사례를 확인하고 싶으면, 아래 링크를 참조하세요:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

양지은님의 프로필 이미지
양지은

작성한 질문수

질문하기