pandas使用get_dummies进行one-hot编码的方法

离散特征的编码分为两种情况:

1、离散特征的取值之间没有大小的意义,比如color:[red,blue],那么就使用one-hot编码

2、离散特征的取值有大小的意义,比如size:[X,XL,XXL],那么就使用数值的映射{X:1,XL:2,XXL:3}

使用pandas可以很方便的对离散型特征进行one-hot编码

import pandas as pd
df = pd.DataFrame([
   ['green', 'M', 10.1, 'class1'],
   ['red', 'L', 13.5, 'class2'],
   ['blue', 'XL', 15.3, 'class1']])

df.columns = ['color', 'size', 'prize', 'class label']

size_mapping = {
   'XL': 3,
   'L': 2,
   'M': 1}
df['size'] = df['size'].map(size_mapping)

class_mapping = {label:idx for idx,label in enumerate(set(df['class label']))}
df['class label'] = df['class label'].map(class_mapping)

说明:对于有大小意义的离散特征,直接使用映射就可以了,{'XL':3,'L':2,'M':1}

Using the get_dummies will create a new column for every unique string in a certain column:使用get_dummies进行one-hot编码
pd.get_dummies(df)

以上这篇pandas使用get_dummies进行one-hot编码的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python pandas常用函数详解

    本文研究的主要是pandas常用函数,具体介绍如下. 1 import语句 import pandas as pd import numpy as np import matplotlib.pyplot as plt import datetime import re 2 文件读取 df = pd.read_csv(path='file.csv') 参数:header=None 用默认列名,0,1,2,3... names=['A', 'B', 'C'...] 自定义列名 index_col='

  • pandas使用get_dummies进行one-hot编码的方法

    离散特征的编码分为两种情况: 1.离散特征的取值之间没有大小的意义,比如color:[red,blue],那么就使用one-hot编码 2.离散特征的取值有大小的意义,比如size:[X,XL,XXL],那么就使用数值的映射{X:1,XL:2,XXL:3} 使用pandas可以很方便的对离散型特征进行one-hot编码 import pandas as pd df = pd.DataFrame([ ['green', 'M', 10.1, 'class1'], ['red', 'L', 13.5

  • pandas 中对特征进行硬编码和onehot编码的实现

    首先介绍两种编码方式硬编码和onehot编码,在模型训练所需要数据中,特征要么为连续,要么为离散特征,对于那些值为非数字的离散特征,我们要么对他们进行硬编码,要么进行onehot编码,转化为模型可以用于训练的特征 初始化一个DataFrame import pandas as pd df = pd.DataFrame([ ['green', 'M', 20, 'class1'], ['red', 'L', 21, 'class2'], ['blue', 'XL',30, 'class3']])

  • Python基于pandas实现json格式转换成dataframe的方法

    本文实例讲述了Python基于pandas实现json格式转换成dataframe的方法.分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- #!python3 import re import json from bs4 import BeautifulSoup import pandas as pd import requests import os from pandas.io.json import json_normalize class image_str

  • 用vbs在 HTA 内对脚本进行编码的方法

    问: 您好,脚本专家!如何在 HTA 内对脚本进行编码? -- LL 答: 您好,LL.您知道,刚看到这个问题时,我们就在想:"这有什么大不了的?难道不能像在 HTML 文件中那样在 HTML 应用程序 (HTA) 中对脚本进行编码吗?"令我们大为吃惊的是,好像不能在 HTA 中对脚本进行编码:每次试图这样做时,都会返回像下面这样的错误消息: Scripting encoder object ("Scripting.Encoder") failed on C:\Sc

  • python对html代码进行escape编码的方法

    本文实例讲述了python对html代码进行escape编码的方法.分享给大家供大家参考.具体分析如下: python包含一个cgi模块,该模块有一个escape函数可以用来对html代码进行编码转换 import cgi s1 = "Hello <strong>world</strong>" s2 = cgi.escape(s1) assert s2 == "Hello <strong>world</strong>"

  • JS实现对中文字符串进行utf-8的Base64编码的方法(使其与Java编码相同)

    本文实例讲述了JS实现对中文字符串进行utf-8的Base64编码的方法.分享给大家供大家参考,具体如下: 要进行编码的字符串:"select 用户名 from 用户" 使用JAVA进行编码,Java程序: String sql = "select 用户名 from 用户"; String encodeStr = new String(Base64.encode(sql.getBytes("UTF-8"))); // 编码 System.out.

  • C#简单判断字符编码的方法

    本文实例讲述了C#简单判断字符编码的方法.分享给大家供大家参考,具体如下: public static string GetText(byte[] buff) { string strReslut = string.Empty; if (buff.Length > 3) { if (buff[0] == 239 && buff[1] == 187 && buff[2] == 191) {// utf-8 strReslut = Encoding.UTF8.GetStr

  • php实现json编码的方法

    本文实例讲述了php实现json编码的方法.分享给大家供大家参考.具体如下: <?php /* * json */ $books = array('key1'=>'value1','key2'=>'value2','key3'=>array('key4'=>'value4','key5'=>'value5')); $json = json_encode($books); $rejson = json_decode($json,true); echo '原数组:<b

  • php简单判断文本编码的方法

    本文实例讲述了php简单判断文本编码的方法.分享给大家供大家参考.具体如下: 这里通过对文本的一次循环编码,来判断是否属于该编码. public function chkCode($string) { $code = array( 'ASCII', 'GBK', 'UTF-8' ); foreach ($code as $c) { if ($string === iconv('UTF-8', $c, iconv($c, 'UTF-8', $string))) { return $c; } } r

  • 对pandas的dataframe绘图并保存的实现方法

    对dataframe绘图并保存: ax = df.plot() fig = ax.get_figure() fig.savefig('fig.png') 可以制定列,对该列各取值作统计: label_dis = df.label.value_counts() ax = label_dis.plot(title='label distribution', kind='bar', figsize=(18, 12)) fig = ax.get_figure() fig.savefig('label_d

随机推荐