one-hot
one-hot的基本思想:将离散型特征的每一种取值都看成一种状态 , 若你的这一特征中有N个不相同的取值 , 那么我们就可以将该特征抽象成N种不同的状态 , one-hot编码保证了每一个取值只会使得一种状态处于“激活态” , 也就是说这N种状态中只有一个状态位值为1 , 其他状态位都是0 。
pandas.get_dummies(data, prefix=None, prefix_sep='_', dummy_na=False, columns=None, sparse=False, drop_first=False)
参数说明:
data : array-like, , or
输入的数据
: , list of , or dict of ,None
转换后 , 列名的前缀
: list-like,None
指定需要实现类别转换的列名
: bool,False
增加一列表示空缺值 , 如果False就忽略空缺值
: bool,False
文章插图
获得k中的k-1个类别值 , 去除第一个
1.新增列为one-hot形式
# change weekday to one-hot encoding , 将weekday转换成one-hot编码weekdaycols = ['weekday_' + str(i) for i in range(1,8)]tmpdf = pd.get_dummies(dfoff['weekday'].replace('nan', np.nan)) ##如果是nan , 则one——hot为0tmpdf.columns = weekdaycolsdfoff[weekdaycols] = tmpdf
转换前后增加列 , 如果值为nan,则one-hot数值全为0
2.利用增加列
【get_dummies的编码用法】
dummies_Cabin = pd.get_dummies(data_test['Cabin'], prefix= 'Cabin')dummies_Embarked = pd.get_dummies(data_test['Embarked'], prefix= 'Embarked')dummies_Sex = pd.get_dummies(data_test['Sex'], prefix= 'Sex')dummies_Pclass = pd.get_dummies(data_test['Pclass'], prefix= 'Pclass')df_test = pd.concat([data_test, dummies_Cabin, dummies_Embarked, dummies_Sex, dummies_Pclass], axis=1)
- vagrant使用_使用Vagrant的Kubernetes上的Java EE
- 背单词的好方法 什么是孩子们背单词的好方法
- 暴雨什么预警不用上学 暴雨红色预警的停课措施
- 影响导电滑环品质性能的好坏的原因
- 在裁员的浪潮下,如何才能使自己立于不败之地?
- 关于塞儿号的介绍 塞儿号
- CSS中的 “var” 和 “:root”
- 3.Redis数据结构介绍
- 一篇文章了解 Docker 的安装、启动以及工作原理!
- 日志笔记----1