KNN——癌症数据集实验

一、定义

邻近算法,或者说K最近邻(kNN,k-NearestNeighbor)分类算法是数据挖掘分类技术中最简单的方法之一。所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用它最接近的k个邻居来代表。

二、算法原理

三、实验(预测癌症)

import random
import csv
#读取数据
with open('Prostate_Cancer.csv','r')as file:
   reader=csv.DictReader(file)
   datas=[row for row in reader]
#   print(datas)
   # for row in reader:
   #     print(row)

#分组
random.shuffle(datas)
n=len(datas)//3
test_set=datas[0:n]
train_set=datas[n:]
#KNN
#算距离 函数
def distance(d1,d2):
    res=0
    for key in ("radius","texture","perimeter","area","smoothness","compactness","symmetry","fractal_dimension"):
        res+=(float(d1[key])-float(d2[key]))**2
       #res += (d1[key] -
癌症甲状腺数据集 关于人们甲状腺检查的数据。 关于数据集数据集包含确诊者甲状腺检查的数据,是一个全面的患者信息收集,专门针对被诊断为癌症的个人。 列说明: 年龄:诊断或治疗时的年龄。 性别:患者的性别(男性或女性)。 吸烟:患者是否吸烟。 Hx吸烟:患者的吸烟史(例如,他们是否吸烟)。 Hx放射治疗:任何疾病的放射治疗史。 甲状腺功能:甲状腺功能的状态,可能表明是否有任何 异常。 体检:对患者进行体检的结果。 腺病:颈部淋巴结肿大(腺病)的存在或不存在 区域。 病理学:甲状腺癌症的具体类型由 活检样本。 病灶:癌症是单灶性(局限于一个部位)还是多灶性(存在于 多个位置)。 风险:癌症的风险类别基于各种因素,如肿瘤大小, 包括组织学类型、扩散程度和组织学类型。 T: 根据肿瘤的大小和侵入附近结构的程度进行肿瘤分类。 N: 淋巴结分类表明淋巴结受累。 M: 转移分类表明是否存在远处转移。 阶段:癌症的总体阶段,通常通过结合T、N和M来确定 分类。 反应:对治疗的反应,表明癌症是否积极反应, 或者在治疗后保持稳定。 复发:癌症在初次治疗后复发了吗。 文件信息 一个包含383行和17列患者数据的CSV文件。 年龄 诊断或治疗时的年龄。 性别 患者的性别(男性或女性)。 吸烟 无论患者是否吸烟。 Hx吸烟 患者的吸烟史(例如,他们是否吸烟)。 Hx放射治疗 任何疾病的放射治疗史。 甲状腺功能 甲状腺功能的状态,可能表明是否有任何异常。 体格检查 患者体检结果。 腺病 颈部是否存在肿大的淋巴结(腺病)。 病理学 特定类型的甲状腺癌症通过病理检查确定活检样本。 Focality 癌症是单灶性(局限于一个位置)还是多灶性(存在
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值