监督逻辑回归 python
supervised logistic regression python
我正在尝试从 http://www.dummies.com/programming/big-data/data-science/how-to-create-a-supervised-learning-model-with-logistic-regression/
学习逻辑回归中的监督学习,但我得到了这个错误
类型错误:'list'对象不可调用
还有其他错误。我已经搜索过,我知道我必须使用方括号来访问列表,但这没有用。
谁能告诉我代码有什么问题。我正在使用蟒蛇(spyder 3.6)
这是我的代码
from sklearn.datasets import load_iris
from sklearn import linear_model
from sklearn import cross_validation
from sklearn import metrics
iris = load_iris()
X_train, X_test, y_train, y_test=cross_validation.train_test_split(iris.data,iris.target,test_size=0.10,random_state=111)
logClassifier = linear_model.LogisticRegression(random_state=111)
logClassifier.fit(X_train, y_train)
predicted = logClassifier.predict(X_test)
predictedarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])
y_testarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])
metrics.accuracy_score(y_test, predicted)
predicted == y_testarray([ True, True, True, True, True, True, True, True,True, True, True, True, True, True, True], dtype=bool)
在你提供的link中,看起来有些行是输入的,有些行是输出的(这不是很清楚),所以并不是所有的行都是实际代码,但也包含如果你 运行 代码
会发生什么输出
为了澄清,行
predictedarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])
是该行的输出
predicted = logClassifier.predict(X_test)
这是为了说明预测函数的输出,但行 predictedarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])
本身是输出,不应添加到代码
最后一行也是如此:predicted == y_testarray([ True, True, True, True, True, True, True, True,True, True, True, True, True, True, True], dtype=bool)
虽然在link中并没有在link中说清楚,我想这是为了表明运行
的结果
predicted == y_testarray
将等于仅包含 True
的数组,因为这两个数组确实相同,因此您也不需要最后一行
我正在尝试从 http://www.dummies.com/programming/big-data/data-science/how-to-create-a-supervised-learning-model-with-logistic-regression/
学习逻辑回归中的监督学习,但我得到了这个错误
类型错误:'list'对象不可调用
还有其他错误。我已经搜索过,我知道我必须使用方括号来访问列表,但这没有用。
谁能告诉我代码有什么问题。我正在使用蟒蛇(spyder 3.6)
这是我的代码
from sklearn.datasets import load_iris
from sklearn import linear_model
from sklearn import cross_validation
from sklearn import metrics
iris = load_iris()
X_train, X_test, y_train, y_test=cross_validation.train_test_split(iris.data,iris.target,test_size=0.10,random_state=111)
logClassifier = linear_model.LogisticRegression(random_state=111)
logClassifier.fit(X_train, y_train)
predicted = logClassifier.predict(X_test)
predictedarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])
y_testarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])
metrics.accuracy_score(y_test, predicted)
predicted == y_testarray([ True, True, True, True, True, True, True, True,True, True, True, True, True, True, True], dtype=bool)
在你提供的link中,看起来有些行是输入的,有些行是输出的(这不是很清楚),所以并不是所有的行都是实际代码,但也包含如果你 运行 代码
会发生什么输出为了澄清,行
predictedarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])
是该行的输出
predicted = logClassifier.predict(X_test)
这是为了说明预测函数的输出,但行 predictedarray=([0, 0, 2, 2, 1, 0, 0, 2, 2, 1, 2, 0, 2, 2, 2])
本身是输出,不应添加到代码
最后一行也是如此:predicted == y_testarray([ True, True, True, True, True, True, True, True,True, True, True, True, True, True, True], dtype=bool)
虽然在link中并没有在link中说清楚,我想这是为了表明运行
的结果predicted == y_testarray
将等于仅包含 True
的数组,因为这两个数组确实相同,因此您也不需要最后一行