相关文章推荐

1. 数据集介绍

(1)699 条样本,共 11 列数据,第一列用语检索的 id,后 9 列分别是与肿瘤
相关的医学特征,最后一列表示肿瘤类型的数值。
(2)包含 16 个缺失值,用”?”标出。

该案例的数据我会上传到CSDN,请自行搜索下载

2. 案例分析

  • 缺失值处理
# 将?转化为np.nan
data.replace("?",np.nan,inplace=True)
# 删除缺失值
data.dropna(how='any',axis=0,inplace=True)
  • 标准化处理
# 将数据标准化处理
st =StandardScaler()
st.fit_transform(x_train)
st.fit_transform(x_test)
  • 逻辑回归预测
# 进行逻辑回归预测
lg=LogisticRegression()
# 训练数据
lg.fit(x_train,y_train)
# 预测数据
y_predict=lg.predict(x_test)
print("y_predict",y_predict)
  • 预测的准确率
print("预测的准确率:",lg.score(x_test,y_test)) # 准确率为95以上,准确率很好
  • 进行分类评估
report = classification_report(y_test,y_predict,labels=[2,4],target_names=['良性','恶性'])
  • 样本均衡情况下,不需要看auc,只是在样本不均衡的情况,auc很适合
    计算AUC指标, 进行 目标值处理 ,本来是 2 ,现在需要0 和 1
ytest = np.where(y_test > 2.5, 1, 0)
 res = roc_auc_score(y_test,y_predict) # auc指标为0.97

3. 全部代码

import  pandas as pd
import  numpy as np
from  sklearn.model_selection import train_test_split
from  sklearn.preprocessing import  StandardScaler
# 逻辑回归
from  sklearn.linear_model import  LogisticRegression
# 模型评估
from  sklearn.metrics import  classification_report
# AUC 指标计算
from  sklearn.metrics import roc_auc_score
# 加载数据
data = pd.read_csv("./breast-cancer-wisconsin.data")
# print(data)
# print("data 的类型:",type(data))
#设置列名称
columns = ['Sample code number','Clump Thickness','Uniformity of Cell Size','Uniformity of Cell Shape','Marginal Adhesion','Single Epithelial Cell Size','Bare Nuclei','Bland Chromatin','Normal Nucleoli','Mitoses','Class']
# 先将数据转化为df
# df_data = pd.DataFrame(data.values,columns=columns)
# print(df_data)
# 更改列名称
data.columns = columns
print(data.shape)
# 将?转化为np.nan
data.replace("?",np.nan,inplace=True)
# 可以使用dropnan进行删除缺失值
data.dropna(how='any',axis= 0 ,inplace=True)
print("去除缺失值之后的形状:",data.shape)
# 选取特征值,目标值
x = data.iloc[:,1:10].values
y = data.iloc[:,-1].values
# 进行数据集拆分
# 返回特征值
# 返回目标值
x_train,x_test,y_train,y_test = train_test_split(x,y,test_size=0.3)
#数据的标准化处理
st = StandardScaler()
# 进行标准化数据
st.fit_transform(x_train)
st.fit_transform(x_test)
# 进行逻辑回归预测
lg = LogisticRegression()
# 训练数据
lg.fit(x_train,y_train)
# 预测数据
y_predict = lg.predict(x_test)
print("y_predict:",y_predict)
print("权重:",lg.coef_)
print("偏置:",lg.intercept_)
# 预测的准确率--比对y_predict ,y_test
print("预测的准确率:",lg.score(x_test,y_test)) # 准确率为95以上,准确率很好
# 进行分类评估
report = classification_report(y_test,y_predict,labels=[2,4],target_names=['良性','恶性'])
print(report)
# 样本均衡情况下,不需要看auc,只是在样本不均衡的情况,auc很适合
# 计算AUC指标
# 进行 目标值处理
# 本来是 2 和4
# 现在需要0 和 1
# y_test = np.where(y_test > 2.5, 1, 0)
# # print(y_test)
# res = roc_auc_score(y_test,y_predict) # auc指标为0.97
# print(res)

如果想要和我交流,就关注我的微信公众号:梓栋Code

乳腺癌预测 知识库是一项学习练习,旨在: 将机器学习和深度学习的基本概念应用于可用数据集。 根据观察到的数据集评估和解释结果,并证明我的解释是正确的。创建用作计算记录的笔记本并记录我的思考过程。 分析分为四个部分,保存在此存储库的Juypter笔记本。 识别问题和数据源探索性数据分析使用目标输出功能对数据构建模型进行预处理,以预测乳腺癌。 draft.ipynb Jupyter笔记本由2005-2017年的合并数据集组成,具有1048575个数据点,其输出特征的年龄。 BreastCancer.ipynb笔记本由2013-2017年的数据集组成,具有506466个数据点,其目标输出具有乳腺癌史。 BC2005_17bchistory.ipynb和BC2005_2017firstdegree_relative.ipynb Jupyter笔记本由2005-2017年的合并数据集组 讲了回归,就不得不提到Logistic Regression 有的人叫它逻辑回归,也有人叫对数几率回归(西瓜书上的叫法) 提到逻辑回归,就相当于打开了一个新世界的大门,在之前我们只能通过一堆数据,预测某个未知值的值,这类问题也可以叫回归问题。今天这个小可爱虽然它叫逻辑回归,但是如果你以为它是用来解决回归问题的,那就大错特错了,它可是用来解决分类问题的哦,所以有了它我们就不再只能依赖数据得到数据了,... 1. 概念理解 逻辑回归,简称LR,它的特点是能够将我们的特征输入集合转化为0和1这两类的概率。一般来说,回归不用在分类问题上,但逻辑回归却能在二分类(即分成两类问题)上表现很好。 逻辑回归本质上是线性回归,只是在特征到结果的映射加入了一层Sigmod函数映射,即先把特征线形求和,然后使用Sigmoi Histopathologic Cancer Detection需要识别从较大的数字病理扫描获取的小图像补片的转移性癌症。此竞赛的数据是PatchCamelyon(PCam)基准数据集的略微修改版本(原始PCam数据集由于其概率抽样而包含重复图像,但是,在Kaggle上呈现的版本不包含重复项)。PCam数据集将临床相关的转移检测任务打包成为,二分类任务,类似于CIFAR-10和MNIST。模型可以在几个小时内在单个GPU上轻松训练,并在Camelyon16肿瘤检测和整个幻灯片图像诊断任务获得竞争分数。 抗癌肽是一种新型的抗癌药物,副作用小,比化疗和靶向治疗更有效。从序列信息预测抗癌肽是免疫信息学最具挑战性的任务之一。在过去的十年里,已经提出了基于机器学习的方法来从肽序列识别ACP活性。这些方法包括我们之前的方法MLACP(开发于2017年),它对抗癌研究产生了重大影响。MLACP工具已被研究界广泛使用,但其健壮性仍需显著提高,才能继续得到实际应用。在本研究,首次构建了用于ACP研究的==大型非冗余训练和独立数据集==。使用训练数据集,该研究探索了广泛的特征编码,并使用七种不同的传统分类器开发了各自的 import pandas as pd import numpy as np from sklearn.model_selection import train_test_split from sklearn.preprocessing import StandardScal 论文解析:Integration of multiomics data with graph convolutional networks to identify new cancer genes and their associated molecular mechanisms参考论文概括方法数据收集模型构建模型可解释性(LRP)结果数据和代码 Schulte-Sasse, R., Budach, S., Hnisz, D. et al. Integration of multiomics da #把数据的头置为空,因为要自己设置列名称 data = pd.read_csv('./breast-cancer-wisconsin.data',header=None) # print(data) #增加列名 columns = ['Sample code number','Clump Thickness','Uniformity of Cell S... 3.1 逻辑回归介绍 逻辑回归(Logistic Regression)是机器学习的一种分类模型,逻辑回归是一种分类算法,虽然名字带有回归。由于算法的简单和高效,在实际应用非常广泛。 1 逻辑回归的应用场景 广告点击率 是否为垃圾邮件
 
推荐文章