Почему я получаю "LinAlgError: Singular matrix" с statsmodels, но не с sklearn LogisticRegression? - PullRequest
0 голосов
/ 01 апреля 2019

Я пытаюсь построить модель логистической регрессии. Сначала я использовал sklearn, но так как я не мог получить p-значения, я переключился на statsmodels, но я получил «LinAlgError: Singular matrix»

Вот мой код:

clf = LogisticRegression(random_state=0, solver='lbfgs',
                            multi_class='multinomial').fit(train_x, train_y)
            coef = np.reshape(clf.coef_, [43])
            Coefficients[i-1, j-1, :] = coef

            model = sm.Logit(train_y, train_x)

            result = model.fit()

Я получаю ошибку ниже:

Warning: Maximum number of iterations has been exceeded.
         Current function value: 0.443088
         Iterations: 35
---------------------------------------------------------------------------
LinAlgError                               Traceback (most recent call last)
<ipython-input-121-f22ab1b93433> in <module>()
     48             model = sm.Logit(train_y, train_x)
     49 
---> 50             result = model.fit()

Вот форма моих данных:

train_x shape:(1481, 43)
train_y shape:(1481,)

Целевая переменная является двоичной

train_y sum:248.0
...