AttributeError:构建逻辑回归模型时“str”对象没有属性“decode”[重复]

2023-12-11

我正在尝试建立一个逻辑回归模型,但它显示了AttributeError: 'str' object has no attribute 'decode'。请帮我解决这个问题。该代码在 Datacamp 的服务器上完美运行,但在我的笔记本电脑上显示 AttributeError。

import pandas as pd
df = pd.read_csv('datasets/diabetes.csv')
X = df.drop('diabetes',axis = 1)
y = df['diabetes']

# Import the necessary modules
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import classification_report, confusion_matrix

# Create training and test sets
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.4, random_state=42)

# Create the classifier: logreg
logreg = LogisticRegression()

# Fit the classifier to the training data
logreg.fit(X_train,y_train)

错误信息:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-8-c8cf98ee145a> in <module>
     16 
     17 # Fit the classifier to the training data
---> 18 logreg.fit(X_train,y_train)
     19 
     20 #Predict the labels of the test set: y_pred

~\anaconda3\envs\tensorflow\lib\site-packages\sklearn\linear_model\_logistic.py in fit(self, X, y, 
sample_weight)
   1405         else:
   1406             prefer = 'processes'
-> 1407         fold_coefs_ = Parallel(n_jobs=self.n_jobs, verbose=self.verbose,
   1408                                **_joblib_parallel_args(prefer=prefer))(
   1409             path_func(X, y, pos_class=class_, Cs=[C_],


~\anaconda3\envs\tensorflow\lib\site-packages\sklearn\utils\optimize.py in 
_check_optimize_result(solver, result, max_iter, extra_warning_msg)
    241                 "    https://scikit-learn.org/stable/modules/"
    242                 "preprocessing.html"
--> 243             ).format(solver, result.status, result.message.decode("latin1"))
    244             if extra_warning_msg is not None:
    245                 warning_msg += "\n" + extra_warning_msg

 AttributeError: 'str' object has no attribute 'decode'

任何建议,将不胜感激


看来这是 scikit-learn 版本的问题。

无论如何,在最新版本的 scikit-learn 中(现在0.24.1)问题已得到解决,将部分代码包含在 try-catch 块中。对此进行了更详细的解释Gigioz在这个堆栈溢出中question.

可能您有旧版本,所以我建议您使用以下代码升级 scikit-learn 库:

pip install -U scikit-learn

然后重新启动内核,检查新版本是否正确更新,并再次运行代码。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AttributeError:构建逻辑回归模型时“str”对象没有属性“decode”[重复] 的相关文章

随机推荐