尝试对选举数据集进行逻辑回归This is the dataset。其想法是使用数据集预测选举结果。当您建立一个简单的线性回归模型时,代码运行良好。然而,当你使用逻辑回归模型时,它不起作用。唯一有效的方法是删除“年份”列。在不删除“年份”列的情况下,是否有解决此问题的方法?下面是代码
import pandas as pd
import numpy as np
import statsmodels.formula.api as sm
election_data = pd.read_csv(r"C:\Users\Desktop\LogisticRegression\election_data\election_data.csv")
df = election_data.rename({'Amount Spent' : 'Amount_spent', 'Popularity Rank':'Popularity_Rank'}, axis = 1)
df1 = df.drop('Election-id', axis = 1)
simple_model = sm.ols('Result ~ Year + Amount_spent + Popularity_Rank', data = df1).fit()
simple_model.summary()
logit_model = sm.logit('Result ~ + Year + Amount_spent + Popularity_Rank', data = df1).fit()
logit_model.summary()
logit_model = sm.logit('Result ~ + Year + Amount_spent + Popularity_Rank', data = df1).fit()
Warning: Maximum number of iterations has been exceeded.
Current function value: inf
Iterations: 35
Traceback (most recent call last):
File "<ipython-input-20-632757304aa5>", line 1, in <module>
logit_model = sm.logit('Result ~ + Year + Amount_spent + Popularity_Rank', data = df1).fit()
File "C:\Users\adi07\anaconda3\envs\tensorflow_env\lib\site-packages\statsmodels\discrete\discrete_model.py", line 1963, in fit
bnryfit = super().fit(start_params=start_params,
File "C:\Users\adi07\anaconda3\envs\tensorflow_env\lib\site-packages\statsmodels\discrete\discrete_model.py", line 227, in fit
mlefit = super().fit(start_params=start_params,
File "C:\Users\adi07\anaconda3\envs\tensorflow_env\lib\site-packages\statsmodels\base\model.py", line 534, in fit
Hinv = np.linalg.inv(-retvals['Hessian']) / nobs
File "<__array_function__ internals>", line 5, in inv
File "C:\Users\adi07\anaconda3\envs\tensorflow_env\lib\site-packages\numpy\linalg\linalg.py", line 546, in inv
ainv = _umath_linalg.inv(a, signature=signature, extobj=extobj)
File "C:\Users\adi07\anaconda3\envs\tensorflow_env\lib\site-packages\numpy\linalg\linalg.py", line 88, in _raise_linalgerror_singular
raise LinAlgError("Singular matrix")
LinAlgError: Singular matrix
这就是我得到的错误。你知道在这种情况下可以做什么吗
目前没有回答
相关问题 更多 >
编程相关推荐