案例:逻辑回归Logistic Regression做乳腺癌预测

使用逻辑回归算法解决乳腺癌检测问题,使用sk-learn自带的乳腺癌数据集

1 导入数据

from sklearn.datasets import load_breast_cancer
cancer=load_breast_cancer()
X=cancer.data
y=cancer.target
print('data shape:{0};positive:{1},negative:{2}'.format(X.shape,y[y==1].shape,y[y==0].shape))
print('腺癌数据的前两行为:')
print(cancer.data[0:2])
data shape:(569, 30);positive:(357,),negative:(212,)
腺癌数据的前两行为:
[[  1.79900000e+01   1.03800000e+01   1.22800000e+02   1.00100000e+03
    1.18400000e-01   2.77600000e-01   3.00100000e-01   1.47100000e-01
    2.41900000e-01   7.87100000e-02   1.09500000e+00   9.05300000e-01
    8.58900000e+00   1.53400000e+02   6.39900000e-03   4.90400000e-02
    5.37300000e-02   1.58700000e-02   3.00300000e-02   6.19300000e-03
    2.53800000e+01   1.73300000e+01   1.84600000e+02   2.01900000e+03
    1.62200000e-01   6.65600000e-01   7.11900000e-01   2.65400000e-01
    4.60100000e-01   1.18900000e-01]
 [  2.05700000e+01   1.77700000e+01   1.32900000e+02   1.32600000e+03
    8.47400000e-02   7.86400000e-02   8.69000000e-02   7.01700000e-02
    1.81200000e-01   5.66700000e-02   5.43500000e-01   7.33900000e-01
    3.39800000e+00   7.40800000e+01   5.22500000e-03   1.30800000e-02
    1.86000000e-02   1.34000000e-02   1.38900000e-02   3.53200000e-03
    2.49900000e+01   2.34100000e+01   1.58800000e+02   1.95600000e+03
    1.23800000e-01   1.86600000e-01   2.41600000e-01   1.86000000e-01
    2.75000000e-01   8.90200000e-02]]
print('腺癌特征有:')
cancer.feature_names

乳腺癌特征有:

array(['mean radius', 'mean texture', 'mean perimeter', 'mean area',
       'mean smoothness', 'mean compactness', 'mean concavity',
       'mean concave points', 'mean symmetry', 'mean fractal dimension',
       'radius error', 'texture error', 'perimeter error', 'area error',
       'smoothness error', 'compactness error', 'concavity error',
       'concave points error', 'symmetry error', 'fractal dimension error',
       'worst radius', 'worst texture', 'worst perimeter', 'worst area',
       'worst smoothness', 'worst compactness', 'worst concavity',
       'worst concave points', 'worst symmetry', 'worst fractal dimension'],
      dtype='<U23')

2 模型训练

from sklearn.model_selection import train_test_split
X_train,X_test,y_train,y_test=train_test_split(X,y,test_size=0.2)
#模型训练
from sklearn.linear_model import LogisticRegression
model=LogisticRegression()
model.fit(X_train,y_train)
train_score=model.score(X_train,y_train)
test_score=model.score(X_test,y_test)
print('train score:{0};test score{1}'.format</
  • 3
    点赞
  • 114
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
好的,我可以为您提供一个基本的实现示例。 首先,我们需要导入所需的库和数据集。在这里,我们将使用sklearn库中的乳腺癌诊断数据集。 ```python from sklearn.datasets import load_breast_cancer from sklearn.linear_model import LogisticRegression from sklearn.model_selection import train_test_split from sklearn.metrics import classification_report # 加载数据集 data = load_breast_cancer() # 将数据集分为训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2, random_state=42) ``` 接下来,我们将拟合LogisticRegression模型并对测试数据进行预测。 ```python # 初始化LogisticRegression模型 lr = LogisticRegression() # 拟合训练数据 lr.fit(X_train, y_train) # 对测试数据进行预测 y_pred = lr.predict(X_test) ``` 最后,我们可以使用classification_report函数来评估模型的性能。 ```python # 输出分类报告 print(classification_report(y_test, y_pred)) ``` 完整代码如下: ```python from sklearn.datasets import load_breast_cancer from sklearn.linear_model import LogisticRegression from sklearn.model_selection import train_test_split from sklearn.metrics import classification_report # 加载数据集 data = load_breast_cancer() # 将数据集分为训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(data.data, data.target, test_size=0.2, random_state=42) # 初始化LogisticRegression模型 lr = LogisticRegression() # 拟合训练数据 lr.fit(X_train, y_train) # 对测试数据进行预测 y_pred = lr.predict(X_test) # 输出分类报告 print(classification_report(y_test, y_pred)) ``` 希望这可以帮助您开始使用LogisticRegression乳腺癌诊断数据进行分类。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值