K近邻值(KNN)小麦种类预测 预测年收入是否大于50K美元 癌症预测

知识点梳理:

小麦种类预测:
打乱分离集和结果集,源码办法
年收入预测:
样本字符串转数字
癌症预测:
打乱分离集和结果集自带函数,样本数据归一化

文章中数据下载

一、小麦种类预测

1)处理数据

1、导入数据

samples = pd.read_table('./data/wheats.tsv',header=None)
samples

samples.shape
(210, 8)    #共210个样本数据

2、打乱分离训练集和结果集

samples = np.random.permutation(210)  #打乱210个样本的顺序,样本的值不变

samples.iloc[:,0:7]
data = samples.iloc[:,:-1]  # 从 最开始 到 最后的 最后的取不到 
target = samples[7]  # df直接传入索引 是对列的索引
target

3、提取训练集和测试集

训练集为190个之前的
测试集为190个之后的

X_train = data[:190]
y_train = target[:190]
# 测试数据
X_test = data[190:]
y_test = target[190:]

2)创建训练模型并训练

knn = KNeighborsClassifier(n_neighbors=13)  #测试得到n_neighbors = 13的测试准确率较大
knn.fit(X_train,y_train)

3)使用模型预测结果

y_ = knn.predict(X_test)

4)查看模型准确率

knn.score(X_test,y_test)

0.9

二、预测年收入是否大于50K美元

1)处理数据

1、导入数据

df = pd.read_csv('./data/adults.csv')
df

df.shape
(32561, 15)    #共32561个样本数据

2、获取特征与目标值

data = df.loc[:,['age','education','occupation','hours_per_week']]   #特征

target = df['salary']   #目标值

3、数据处理

data
这里的数据类型为字符串,机器不能处理这些数据,我们应将这些数据转换为数字

将所有字符串的列,转换成相应的值让机器去学习

这里写图片描述

levels = data['education'].unique()
levels   #输出所有的不重复的种类

array([
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值