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

kangmi님의 프로필 이미지

작성한 질문수

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

작업형3 로지스틱 회귀

해결된 질문

작성

·

99

0

https://www.kaggle.com/code/agileteam/t3-2-example-py/

캐글에 올려주신 문제를 보고 있는데 위랑 아래 각각 결과가 다른데 이유를 모르겠어서 문의남깁니다.

로지스틱 회귀 문제의 계수문제는 logit으로 푸는게 맞는걸까요?

import pandas as pd
from sklearn.linear_model import LogisticRegression

# 데이터 로드
df = pd.read_csv('/kaggle/input/bigdatacertificationkr/Titanic.csv')

# 데이터 전처리 
df['Gender'] = df['Gender'].map({'male': 0, 'female': 1})

# 로지스틱 회귀 모형 생성 및 학습
X = df[['Pclass', 'Gender', 'SibSp', 'Parch']]
y = df['Survived']
model = LogisticRegression()
model.fit(X, y)

# parch 변수의 계수값 출력
print("Parch 변수의 계수값:", model.coef_[0][3])
import pandas as pd
from statsmodels.formula.api import logit

df = pd.read_csv("/kaggle/input/bigdatacertificationkr/Titanic.csv")
formula = "Survived ~ C(Pclass) + Gender + SibSp + Parch"
model = logit(formula, data=df).fit()
model.params['Parch']

답변 1

0

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

풀이 방법을 달리 하는 것은 응원합니다만 시험이 1주 밖에 남지않아 알려드린 풀이법을 추천해요💪💪💪

LogisticRegression 모델을 사용한다면 Gender 원핫인코딩시 N-1개(범주형 수)로 인코딩이 필요합니다. 위 방식으로 하려면 원핫인코딩 후 생성된 컬럼 중 첫번째 컬럼을 삭제가 필요합니다.

또는 겟더미 사용시 아래 방법이 있어요!
pd.get_dummies(df[['컬럼명']], drop_first=True)

kangmi님의 프로필 이미지

작성한 질문수

질문하기