해결된 질문
작성
·
731
답변 1
0
로지스틱 회귀에서 C() 함수는 독립변수 중 범주형 변수임을 명시하는 데 사용됩니다. 예를 들어, logit('Y ~ C(X) + Z', data=data)에서 C(X)는 X가 범주형 변수임을 나타내며, Z는 수치형 변수로 가정함
statsmodels 라이브러리에서는 범주형 독립변수가 있다면 C()로 명시하면 되고
scikit-learn 라이브러리에서는 원핫인코딩을 통해 수치형으로 변환이 필요합니다.
혹시 C 의 의미가 수치형->범주형, 범주형->수치형으로 양쪽 모두 바꿔주는 역할인건지 궁금합니다
C() 함수는 변수가 범주형임을 나타내는 데 사용되며, 수치형에서 범주형으로, 또는 그 반대로 변환하는 역할을 하는 것이 아닙니다. 오히려 수치형으로 표현된 범주형 변수를 모델에게 올바르게 해석하도록 만들어줍니다.
답변 감사합니다.
https://www.kaggle.com/code/agileteam/t3-2-example-py/notebook
캐글에 올려주신 비슷한 logistic 회귀분석 문제인데요~
거기서는 예시 정답에 아래와 같이 Pclass 부분에 범주형(C)를 씌우셨던데 이유가 있을지 궁금합니다.
formula = "Survived ~ C(Pclass) + Gender + SibSp + Parch"
df.info()로 보았을때, pclass와 sibsp, parch는 모두 int 형이고, gender만 object형이라서 gender에 C를 넣어야 하는게 아닌지 생각되어서요~