2016-12-28 82 views
0

我对Python很陌生。我想获得一个回归的摘要像R.我已经创建x_train变量和y_train,我试图得到一个逻辑回归Python中的回归总结

import numpy as np 
import matplotlib.pyplot as plt 
from sklearn import linear_model 

clf = linear_model.LogisticRegression(C=1e5) 
clf.fit(x_train, y_train) 

我得到的是:

LogisticRegression(C=100000.0, class_weight=None, dual=False, 
    fit_intercept=True, intercept_scaling=1, max_iter=100, 
    multi_class='ovr', n_jobs=1, penalty='l2', random_state=None, 
    solver='liblinear', tol=0.0001, verbose=0, warm_start=False) 

我想有一个有意义的水平的总结,R2 ecc。

回答

1

我建议采取看看statsmodels库。 SK-学习是伟大的(和其他的答案提供方法来获得在R2和其他指标),但statsmodels提供了一个回归总结非常相似,你可能习惯在R.

举个例子之一:

import statsmodels.api as sm 
from sklearn.datasets import make_blobs 

x, y = make_blobs(n_samples=50, n_features=2, cluster_std=5.0, 
        centers=[(0,0), (2,2)], shuffle=False, random_state=12) 

logit_model = sm.Logit(y, sm.add_constant(x)).fit() 
print logit_model.summary() 

Optimization terminated successfully. 
     Current function value: 0.620237 
     Iterations 5 
          Logit Regression Results       
============================================================================== 
Dep. Variable:      y No. Observations:     50 
Model:       Logit Df Residuals:      47 
Method:       MLE Df Model:       2 
Date:    Wed, 28 Dec 2016 Pseudo R-squ.:     0.1052 
Time:      12:58:10 Log-Likelihood:    -31.012 
converged:      True LL-Null:      -34.657 
             LLR p-value:     0.02611 
============================================================================== 
       coef std err   z  P>|z|  [95.0% Conf. Int.] 
------------------------------------------------------------------------------ 
const   -0.0813  0.308  -0.264  0.792  -0.684  0.522 
x1    0.1230  0.065  1.888  0.059  -0.005  0.251 
x2    0.1104  0.060  1.827  0.068  -0.008  0.229 
============================================================================== 

如果你想添加的,而不是Logit模型初始化,您可以拨打.fit_regularized()并传递阿尔法参数(正规化强度)后调用.fit()正规化。如果你这样做,请记住sk-learn中的C参数实际上是规则化强度的inverse