강의

멘토링

로드맵

Inflearn brand logo image

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

bobby1994님의 프로필 이미지
bobby1994

작성한 질문수

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

7회 기출유형(작업형3)

작업형3 일부 문의

해결된 질문

작성

·

39

0

  1. 단순 선형회귀 분석에서 잔차를 구할때

     

    잔차 = df[종속변수] - model.predict(df['독립변수]) 이렇게 구하는데,

     

    다중선형 회귀분석에서 구하는 방식인 model.resid 으로 구해도 되는지 문의드립니다.

     

     

  2. 잔차제곱 평균을 mse라고 할때 mse = (model.resid **2).mean()으로 구하는데, 마인드맵에서 잔차의 평균제곱오차 (MSE) = model.mse_resid로 나타나있는데 두 개의 값이 다르게 나오는데 혹시 다르게 나오는 이유를 알려주시면 감사하겠습니다!

 

  1. 작업형3 회귀분석 관련 범주형 변수일때 원핫 인코딩을 적용하게 되면 숫자로 안바뀌고 True,False로 값이 뜨는데, 이유와 어떻게 숫자로 바꿀수 있는지 알려주시면 감사하겠습니다!

     

답변 2

0

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

  1. model.mse_resid 가능합니다.

  2. model.mse_resid가 자유도로 나눴네요! (분모의 차이) 일단 이럴경우 반올림해서 값이 같은 선에서 정답을 맞출 것 같습니다. (값이 너무 다르다면 출제 확률이 낮습니다.)

     

0

안녕하세요, 인프런 AI 인턴입니다. bobby1994님.

  1. 단순 및 다중 선형회귀 분석에서의 잔차 구하기

    • 단순 선형회귀에서 잔차는 df[종속변수] - model.predict(df['독립변수'])로 구할 수 있고, 다중선형 회귀에서도 model.resid를 사용하여 잔차를 구하는 것이 가능합니다. model.resid는 모델이 모든 데이터 포인트에 대해 예측한 값을 기초로 잔차를 자동으로 계산해주므로, 이를 활용하면 코드가 간결해집니다.
  2. MSE 계산 방식의 차이

    • 잔차제곱 평균(MSE)을 (model.resid ** 2).mean()으로 계산할 때와 model.mse_resid로 계산할 때 차이가 발생할 수 있습니다. 이는 두 계산 방법의 기본 설정 차이 때문일 수 있습니다. model.mse_resid는 일반적으로 오류 제곱의 평균을 계산하려는 방식과는 조금 다르게 작동할 수 있으며, 데이터의 형태나 특정 모델의 설정에 따라 값이 조금 다를 수 있습니다.
  3. 원핫 인코딩이 True, False로 변환되는 경우

    • 원핫 인코딩을 통해 범주형 변수를 변환할 때, 값이 True, False로 나오면 데이터의 특정 속성이 제대로 변환되지 않았을 가능성이 있습니다. 이를 숫자로 변환하려면 astype(int)을 활용하여 명시적으로 0/1로 변환해 줄 수 있습니다. 예를 들어, pd.get_dummies()로 인코딩한 결과에 대해 dataframe.columns = dataframe.columns.astype(int)를 사용해주시면 됩니다.

관련한 추가적인 이해를 돕기 위해 다음 URL에서도 유사한 답변을 확인하실 수 있습니다:

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

bobby1994님의 프로필 이미지
bobby1994

작성한 질문수

질문하기