python - 有没有办法实现样本权重?

标签 python logistic-regression statsmodels sample

我在 Python 中使用 statsmodels 进行逻辑回归分析。例如:

import statsmodels.api as sm
import numpy as np
x = arange(0,1,0.01)
y = np.random.rand(100)
y[y<=x] = 1
y[y!=1] = 0
x = sm.add_constant(x)
lr = sm.Logit(y,x)
result = lr.fit().summary()

但我想为我的观察定义不同的权重。我正在组合 4 个不同大小的数据集,并希望对分析进行加权,以便来自最大数据集的观察结果不会支配模型。

最佳答案

我花了一些时间来解决这个问题,但实际上很容易在 statsmodels 中创建一个带有加权行/每行多个观察值的 logit 模型。这是它是如何完成的:

import statsmodels.api as sm
logmodel=sm.GLM(trainingdata[['Successes', 'Failures']], trainingdata[['const', 'A', 'B', 'C', 'D']], family=sm.families.Binomial(sm.families.links.logit)).fit()

关于python - 有没有办法实现样本权重?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23339416/

相关文章:

machine-learning - 多类分类中的成本函数是什么?

python - sklearn.linear_model.LogisticRegression 中回归的工作原理

python - 错误 : PerfectSeparationError: Perfect separation detected, 结果不可用

python - statsmodel.formula.api python 中的线性回归

python - 加载使用 joblib/pickle 保存的 ML 模型时出现问题

python - Statsmodels:从 VARMAX.fit() 获取误差相关矩阵

python - 关闭并打开新窗口 PYQT5

python - Wordnet 同义词不返回所有值 nltk

Python 2.7 字符串解码。

python - 如何根据另一个 DataFrame 的条件从多索引 Dataframe 中选择重复子集