博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
类别标签处理
阅读量:6319 次
发布时间:2019-06-22

本文共 1531 字,大约阅读时间需要 5 分钟。

pandas one_hot编码

1 import pandas as pd2 3 data = pd.Series(["java","python","c","python","html","java","linux"])4 data1 = pd.get_dummies(data)5 print(data1)

输出结果:

   c  html  java  linux  python

0  0     0     1      0       0
1  0     0     0      0       1
2  1     0     0      0       0
3  0     0     0      0       1
4  0     1     0      0       0
5  0     0     1      0       0
6  0     0     0      1       0

sklearn one_hot编码

1 import pandas as pd2 from sklearn.preprocessing import label_binarize3 data = pd.DataFrame([["java"],["python"],["c"],["python"],["html"],["java"],["linux"]],columns=["name"])4 classes = list(set(data["name"].values.tolist()))5 data2 = label_binarize(data["name"],classes=classes)6 data = pd.DataFrame(data2,columns=classes)7 print(data)

   java  linux  html  c  python

0     1      0     0  0       0
1     0      0     0  0       1
2     0      0     0  1       0
3     0      0     0  0       1
4     0      0     1  0       0
5     1      0     0  0       0
6     0      1     0  0       0

1 from sklearn.preprocessing import LabelEncoder2 from sklearn.preprocessing import OneHotEncoder3 4 data = pd.DataFrame([["java"],["python"],["c"],["python"],["html"],["java"],["linux"]],columns=["name"])5 l = LabelEncoder()6 d = l.fit_transform(data["name"])7 o = OneHotEncoder()8 data3 = pd.DataFrame((o.fit_transform(d.reshape(-1,1))).toarray(),columns=l.classes_)9 print(data3)

     c  html  java  linux  python

0  0.0   0.0   1.0    0.0     0.0
1  0.0   0.0   0.0    0.0     1.0
2  1.0   0.0   0.0    0.0     0.0
3  0.0   0.0   0.0    0.0     1.0
4  0.0   1.0   0.0    0.0     0.0
5  0.0   0.0   1.0    0.0     0.0
6  0.0   0.0   0.0    1.0     0.0

label_binarize的返回值是numpy.ndarray的数据类型

OneHotEncoder的返回值是scipy.sparse.csr.csr_matrix的数据类型使用toarray()处理为numpy.ndarray的数据类型

对用 ndarray的数据使用tolist()转换为列表,使用list(set(list_data))去重复

 

转载于:https://www.cnblogs.com/weixiaokeji/p/9124152.html

你可能感兴趣的文章
UDP template 代码
查看>>
爬虫 高性能
查看>>
使用React、Node.js、MongoDB、Socket.IO开发一个角色投票应用的学习过程(二)
查看>>
干吧跌!~brothers!~~
查看>>
linux 0.11 源码学习(七)
查看>>
函数模板的简单用法
查看>>
利用 LINQ的skip和Take 方法对List实现分页效果
查看>>
python 中的列表解析和生成表达式 - 转
查看>>
jQuery数组的遍历 function的加载
查看>>
杂记~~~MFC SOCKET
查看>>
AWK文本处理工具(Linux)
查看>>
完成评论功能
查看>>
VC 输入法注入源码
查看>>
BinaryTree I
查看>>
IE6-IE9兼容性问题列表及解决办法_补充之四:HTC (Html Components) 功能逐渐被IE抛弃...
查看>>
Verilog与C/C++的一些区别
查看>>
DIV焦点事件详解 --【focus和tabIndex】
查看>>
vim php代码规范
查看>>
最最基本的Git入门 -- 本地仓库操作
查看>>
机器学习平台跃迁,AI中台才是大势所趋
查看>>