要按性别和年龄进行逻辑回归分析,并报告结果,可以按照以下步骤操作:
import pandas as pd
import statsmodels.api as sm
# 读取数据
data = pd.read_csv('data.csv')
# 按性别和年龄分层
data['age_group'] = pd.cut(data['age'], bins=[0, 18, 30, 50, 100], labels=['<18', '18-30', '30-50', '50+'])
# 创建虚拟变量
dummy_vars = pd.get_dummies(data[['gender', 'age_group']])
data = pd.concat([data, dummy_vars], axis=1)
# 定义自变量和因变量
X = data[['gender_Female', 'gender_Male', 'age_group_<18', 'age_group_18-30', 'age_group_30-50', 'age_group_50+']]
y = data['response']
# 添加截距项
X = sm.add_constant(X)
# 拟合逻辑回归模型
logit_model = sm.Logit(y, X)
result = logit_model.fit()
# 输出回归结果
print(result.summary())
上述代码中,假设数据文件为"data.csv",其中包含了性别、年龄和响应变量。首先,通过cut
函数将年龄分为不同的年龄组,并使用get_dummies
函数创建虚拟变量。然后,定义自变量和因变量,自变量包括性别和年龄组的虚拟变量,因变量为响应变量。最后,使用Logit
函数和fit
方法进行逻辑回归模型的拟合,并使用summary
方法输出回归结果。
请根据具体的数据和需求进行适当的修改。
上一篇:按性别和年龄对多维数组进行排序
下一篇:按性别和种族过滤