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

munjihey1127님의 프로필 이미지
munjihey1127

작성한 질문수

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

이원 분산 분석 🆕 updated 2023.10

이원분산분석 C() 질문 있습니다.

해결된 질문

작성

·

332

·

수정됨

0

안녕하세요. 강의 수강 중 질문이 있어 글 남깁니다.

________________________________________________________

첫 번째 질문

이원 분산 분석 5분 30초 즈음, 모든 변수에 C()로 감싸주는게 차라리 속 편하다고 하셨는데, 만약 독립변수 중에 범주형이 아닌 수치형 변수에다가도 C()로 감싸주어도 될까요?

+ 인프런 AI 댓글을 보고, 결론을 요약해보았습니다.

이원 분산 분석에서
1. object형 + 범주형 특성 => 앞에 C()를 붙인다.
2. int/float형 + 범주형 특성 => 앞에 C()를 붙인다.
3. int/float형 + 범주형 특성 X => 앞에 C()를 붙이지 않는다.

요약한 내용이 맞을까요?

________________________________________________________
두 번째 질문
또한 이원 분산 분석이 아니라, 일원 분산 분석에서 독립 변수가 범주형 변수면 C()로 감싸주어야 할까요?

________________________________________________________

세 번째 질문
예시문제 작업형3 /로지스틱 회귀 강의 중 7분 12초 즈음에,

model = logit("Survived ~ C(Gender) + SibSp + Parch + Fare", data=df).fit()

부분에 SibSp 와 Parch는 수치형이지만 범주형 특성을 띄고 있는데, 이 부분에는 C()를 왜 안하는건지 여쭤보고 싶습니다! 감사합니다!

 

답변 3

0

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

  1. 이원분산분석의 독립변수는 일반적으로 범주형 변수입니다. 따라서 모두 C()가 붙는 것이 맞아요!
    2.이원분산분석, 일원분산분석은 요인 수만 달라요. 동일하게 모두 C()붙여주시죠!
    3. 회귀와 로지스틱 회귀에서는 주의해주세요! 범주형에만 C()를 붙입니다.
    문제에서 범주형이라고 하면 C()를 붙여주세요.
    Gender는 누가봐도 남과 여 두 개 밖에 없는 범주형이고
    SibSp 와 Parch는 수치형데이터 입니다.

    만약에 SibSp도 범주형이다!! 라고 하시면 네, 맞습니다. 그럴 수도 있습니다.
    숫자인데 범주형일 경우 시험에서는 명확하게 명시할 것으로 판단됩니다. (그렇지 않을 경우 이렇게 논란이 될 것 같아요)
    이해가 되었을까요? 혼란이온다면 부족하면 댓글 부탁드려요!!

0

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

분산 분석에서 이원 이던, 일원 분산 분석이든, 독립변수가 범주형이므로 C()로 감싸주는 것이 좋습니다.

 

다만 회귀 분석에서는 독립변수가 수치형도 사용되므로 모두 C()로 묶으면 안됩니다.

 

munjihey1127님의 프로필 이미지
munjihey1127
질문자

빠른 답변 감사합니다!
제가 질문을 수정해서 다시 올렸는데, 한 번 봐주실 수 있으신가요?

0

안녕하세요, 인프런 AI 인턴입니다. munjihey1127님의 질문에 대해 답변 드리겠습니다.

이원 분산 분석에서 변수에 C()를 적용하는 것에 대한 논의는 실제로 여러 강의와 질의응답에서 다뤄진 바 있습니다. 해당 처리는 주로 범주형 변수를 다룰 때 사용됩니다. C()는 통계 모델에서 해당 변수를 범주형으로 명시적으로 인식하도록 도와주는 역할을 합니다. 이원 분산 분석에서는 모든 독립변수를 C()로 감싼다는 의견이 있으나, 이는 변수의 성격을 잘 파악해 결정해야 합니다.

수치형 변수에 C()를 적용하는 것은 일반적으로 그 변수가 범주형적 성질을 가지고 있을 때 적용됩니다. 예를 들어, 숫자가 등급이나 유형을 나타내는 경우 등에 해당합니다. 그러나 만약 독립변수가 실제 수치적 가치를 갖고 이를 통해 계산이 필요한 경우(예: 연령, 수입 등)에는 C()를 적용해서는 안 됩니다.

일원 분산 분석의 경우, 독립 변수가 범주형이면 C()로 감싸는 것이 적절합니다. 이는 분석을 수행할 때 해당 변수가 범주형임을 명시적으로 표현하게 해주며, 모델이 이를 올바르게 처리하도록 돕습니다.

이에 대한 좀 더 구체적인 설명은 다음 질문&답변에서 확인할 수 있습니다:

이러한 답변들로 미루어보아, 독립변수 중 범주형이 아닌 수치형 변수에 C()를 감싸줄지 여부는 해당 변수의 성격을 잘 이해하고 결정해야 합니다. 일반적으로 숫자가 실제 수치적 가치를 나타내는 경우에는 C()를 적용하지 않습니다. 일원 분산 분석 역시 독립 변수가 범주형일 경우에는 C()로 감싸주게 됩니다.

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

munjihey1127님의 프로필 이미지
munjihey1127

작성한 질문수

질문하기