gpt4 book ai didi

python - scikit-learn 中逻辑回归的输入格式与 R 中一样

转载 作者:行者123 更新时间:2023-11-28 19:29:19 25 4
gpt4 key购买 nike

R 中使用逻辑回归时,“glm”函数(family = binomial)的数据输入可以是:(?family)多种格式,具体格式为:

......

For the binomial and quasibinomial families the response can be specified in one of three ways:

......

As a numerical vector with values between 0 and 1, interpreted as the proportion of successful cases (with the total number of cases given by the weights)....

我汇总了表示试验成功比例(0 到 1 之间的数字)及其等效权重的数据,我有兴趣对其应用逻辑回归,这在 R 中使用起来很简单。

不幸的是我不能在这个项目中使用 R,并且想使用 scikit-learn 来估计逻辑回归系数。更准确地说,我希望以一种输入形式应用 sklearn.linear_model.LogisticRegression,这将允许我以与 R 中可用的类似方式插入模型比例和权重。

例子:

from sklearn import linear_model
import pandas as pd

df = pd.DataFrame([[1,1,1,0], [1,1,1,0],[1,1,1,1],[2,2,1,1] , [2,2,1,1],[2,2,1,0] , [3,3,1,0] ],columns=['a', 'b','Trials','Success'])

logistic = linear_model.LogisticRegression()
#this works
logistic.fit(X=df[['a','b','Trials']] , y=df.Success)
logistic.predict_proba(df[['a','b','Trials']])
prob_to_success = logistic.predict_proba(df[['a','b','Trials']])[:,1]


prob_to_success

Out[51]: array([ 0.45535843, 0.45535843, 0.45535843, 0.42212169, 0.42212169,
0.42212169, 0.38957565])

#How can i use the following Data?
df_agg = df.groupby(['a','b'] , as_index=False)['Trials','Success'].sum()
df_agg["Prop"] = df_agg.Success / (df_agg.Trials)
df_agg

#I want to use Prop & Trials as weights in df_agg

提前致谢!

最佳答案

转换为对数赔率形式并在转换中使用线性回归。 Sklearn 似乎没有用于逻辑回归的准二项式转换。正如您所说,在 R 中微不足道,但 sklearn 似乎没有任何此类内容。

关于python - scikit-learn 中逻辑回归的输入格式与 R 中一样,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34629805/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com