本文介绍: 需要用到pandas这个包,调用请提前下载这个就是用独热编码替换离散特征。例如,“MSZoning”包含值“RL”和“Rm我们创建两个新的指示器特征“MSZoning_RL”和“MSZoning_RM”,其值为0或1。根据独热编码,如果“MSZoning”的原始值为“RL”,则:“MSZoning_RL”为1,“MSZoning_RM”为0。首先假如一个数据集有六个样本每个样本两种特征数据保存在‘111.csv’中,其中feature1是文字特征,分别为“bak” “bif” “ni

需要用到pandas这个包,调用请提前下载

这个就是用独热编码来替换离散特征

例如,“MSZoning”包含值“RL”和“Rm我们创建两个新的指示器特征“MSZoning_RL”和“MSZoning_RM”,其值为0或1。根据独热编码,如果“MSZoning”的原始值为“RL”,则:“MSZoning_RL”为1,“MSZoning_RM”为0。

首先假如一个数据集有六个样本每个样本两种特征,数据保存在‘111.csv’中,其中feature1是文字特征,分别为“bak” “bif” “nig”,feature2是数字特征

直接上代码,演示其使用方法及作用

import pandas as pd

all_features = pd.read_csv('111.csv')
all_features = pd.get_dummies(all_features)
print(all_features)

输出中可见,get_dummies函数直接将feature1的特征拆分成了3个特征,分别为feature1_bak、 feature1_bif、 feature1_nig,并将其对应项的特征值设为1,没有的设为0

函数中还有一个参数是dummy_na,其作用是:是否将“na”(缺失值)视为有效的特征值,并为其创建指示符特征。

dummy_na = false,就是不将“na”视为有效特征值,等于true就是将“na”视为一个特征值,并为其建立指示符特征。

以222.csv为例

all_features1 = pd.read_csv('222.csv')
all_features1 = pd.get_dummies(all_features, dummy_na=False)
print(all_features)

输出:并没有将nan作为一个特征值来看待,直接将其忽略

all_features1 = pd.get_dummies(all_features1, dummy_na=True)
print(all_features1)

输出: 将nan当作一种特征值,并为其建立feature1_nan特征

 

原文地址:https://blog.csdn.net/weixin_57702524/article/details/124613418

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_6943.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注