LogisticRegression.score()传入什么数据
时间: 2024-05-05 20:22:33 浏览: 70
在 scikit-learn 中,`LogisticRegression` 模型的 `score()` 方法用于计算模型在给定数据集上的精度(accuracy)。在调用 `score()` 方法时,需要传入测试数据集 X 和 y。
具体来说,`score()` 方法的参数如下:
```
score(self, X, y, sample_weight=None)
```
其中,`X` 是测试数据集的特征矩阵,大小为 `n_samples × n_features`;`y` 是测试数据集的目标向量,大小为 `n_samples`;`sample_weight` 是样本权重,可选参数。
例如,以下是一个使用 `LogisticRegression` 模型进行分类并计算精度的示例代码:
```python
from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
# 加载数据集
iris = load_iris()
X = iris.data
y = iris.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0)
# 初始化模型
lr = LogisticRegression()
# 训练模型
lr.fit(X_train, y_train)
# 计算精度
accuracy = lr.score(X_test, y_test)
print('Accuracy:', accuracy)
```
在上述示例代码中,我们首先加载了 iris 数据集,并将其划分为训练集和测试集。然后,我们初始化了 `LogisticRegression` 模型,并对其进行了训练。最后,我们使用 `score()` 方法计算模型在测试集上的精度,并输出结果。
阅读全文