sklearn笔记15 str类型的数据量化操作

完整代码 sklearn代码10 8-encoding

导包

import numpy as np

import pandas as pd

from pandas import Series,DataFrame

from sklearn.preprocessing import OneHotEncoder,LabelEncoder

from sklearn.neighbors import KNeighborsClassifier
salary = pd.read_csv('./salary.txt')
salary.head()

在这里插入图片描述

salary.drop(labels=['final_weight','education_num','capital_gain','capital_loss'],
          axis = 1,inplace=True)
salary.head()

在这里插入图片描述

OridinalEncoder使用

返回的数据就是一个numpy
在这里插入图片描述
查看列
在这里插入图片描述
对数据进行转换
在这里插入图片描述
在这里插入图片描述
得到unique并将其付给u
在这里插入图片描述
对其进行排序
在这里插入图片描述

LabelEncoder的使用

在传输数据时需要一列一列进行传输,也可以进行数据转换,使用for循环可以实现与上述方法相同的效果,在最后可以看到对数据都进行了量化

le = LabelEncoder()
salary_label = le.fit_transform(salary['salary'])

salary_label   
le.fit_transform(salary['education'])

在这里插入图片描述

for col in salary.columns:
    salary[col] = le.fit_transform(salary[col])
salary.head()

在这里插入图片描述
label就是标签的意思,给数据加上一个数量标签,就是对数据进行量化

OneHotEncoder方法

edu.drop_duplicates().count()

在这里插入图片描述

edu = salary[['education']]  #转换没有问题
edu

oh = OneHotEncoder()

oh.fit_transform(edu)

在这里插入图片描述

onehot.toarray()[:10]  #查看前是个就不会有省略问题 #如果是标记为1,不是标记为0

在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值