如何将一种热编码的结果加入到数据帧中?

2023-12-04

我想在人口普查数据集中执行 one-hot 编码:

https://archive.ics.uci.edu/ml/datasets/census+venue

我想要执行的列位于国家/地区列中,因此我做了以下操作:

import pandas as pd
from sklearn import preprocessing

def abrirArchivo(fileR):
    head=["gt lt 50","age","workclass","fnlwgt","edu","edu-num","mar-sta","occ","rela","race","sex","cap-gain","cap-loss","country","hpw"]
    f=pd.read_csv(fileR,sep=',')
    f.columns=head

    ohe=oneHot(f)
    print (ohe)

def oneHot(f):
    f[["country"]]=pd.get_dummies(f[["country"]])
    return f

但我收到一个错误:

ValueError: Columns must be same length as key

当我进行序数编码时,以下代码没有问题:

pp=preprocessing.OrdinalEncoder()
f[["country"]]=pp.fit_transform(f[["country"]])

我想要的是将转换后的 ohe(虚拟变量)连接到我原始的 panda 数据框,以便将其用于分类模型。

有什么帮助吗?


看看什么pd.get_dummies返回。现在,尝试考虑是否可以将其放入单个列中!不可能吧?

让我举例说明。假设你有一个 DataFrame

   col1  col2  
0     1  name1   
1     2  name2   

Now, pd.get_dummies(df['col2'])返回:

     name1  name2
0     0     1
1     1     0

这是一个 DataFrametwo列,列中每个不同值对应一列col2.

如果你尝试做

df['col2'] = pd.get_dummies(df['col2'])

您基本上会尝试将具有两列的 DataFrame 放入一列中。不可能!就是这样ValueError: Columns must be same length as key means


如果您想将这些结果返回到df,你可以使用merge, concat or join。有很多不同的方式(SO中有很多关于此的问题)。一个例子是:

df = df.join(pd.get_dummies(df['col2'])).drop(columns='col2')

*Note: drop用于删除原始列。


get_dummies还有一个columns可用于创建虚拟对象的参数and一步删除原始列:

df = pd.get_dummies(df, columns=['col2'])

请注意,旧列名称成为新列prefix隔开prefix_sep下划线 (_):

   col1  col2_name1  col2_name2
0     1           1           0
1     2           0           1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将一种热编码的结果加入到数据帧中? 的相关文章

随机推荐

  • 在提交 spring mvc 上绑定子对象

    我是 Java 新手 所以这个问题看起来很简单 我有一个像这样的模型 Entity name website public class Website Id GeneratedValue strategy GenerationType ID
  • PhoneGap / JQuery Mobile - 键盘可见时页面样式中断

    我有一个使用 Phonegap 和 JQuery Mobile 构建的应用程序 每当软键盘显示时 在表单输入等上 整个页面都会调整大小 图像 按钮和文本 我假设有什么东西破坏了CSS 其他人也遇到过这个问题 或者知道为什么会发生这种情况吗
  • 第 2 部分:Web Start 应用程序:并发问题

    根据您的建议这个线程 我尝试使用 FileLock 但是 当我在文件中写入内容时 Excel 文件不知何故被损坏 并且文件中没有任何内容 它变空 其中没有内容 我有以下方法 void writeIntoTheFile XSSFWorkboo
  • 如何在地图上绘制可视化线串

    我有一些来自 Lng 和 lat 的坐标 我将它们组合成一个线串 线串由 2 个点组成 从一点来说starting origin并从一点开始ending destination 这是 Linestring 列的代码 erg2 Linestr
  • 使用 SqlDataAdapter 插入行

    我想使用 SqlDataAdapter 将一行插入数据库 我在 CustomerOrders 数据库中有 2 个表 Custormers 和 Orders 并且有一千多条记录 我想创建一个 GUI 文本框 用于将新客户和订单添加到数据库中各
  • 捆绑 ArrayList > [重复]

    这个问题在这里已经有答案了 有没有办法通过ArrayList
  • Flask 登录和 Heroku 问题

    我有一个示例 Web 应用程序 在 Heroku 上运行 Flask 的 Flask http twittaclone herokuapp com 当我在本地主机上运行它时 登录功能工作正常 当我推送到 heroku 时 它崩溃了 不允许用
  • 保存到 CSV 时 Spark 写入额外行

    我向 parquet 写入了一个包含 1 000 000 行的文件 当我读回 parquet 文件时 结果是 1 000 000 行 df spark read parquet parquet path df count gt gt gt
  • 当我在我的 Web 应用程序中发送 Ajax 请求时,控制器端会在 laravel 的请求参数中给我脚本

    当我发送这个ajax请求时 ajax url URL to admin repcasetracker getdiscount data serialnumber serialnumberdata success function data
  • 最大并发 TCP/IP 连接数 - Windows XP SP3

    有谁知道 Windows XP SP3 上的最大并发 TCP IP 连接数是多少 我正在尝试对一台机器进行负载测试 并且想知道应用程序 在我的例子中是java应用程序 可以向该机器打开的最大tcp连接数是多少 请注意 您通常可能会受到客户端
  • 如何使用内置的 .net 压缩类来压缩目录?

    使用 System IO Compression 命名空间类 GZIPStream 和 DeflateStream 我成功地可以压缩和解压缩单个文件 但是 如果我传递目录名作为压缩目标 则会出现安全异常 我是否必须 递归地 枚举所有文件和子
  • 同时抽象对象和行为的模式

    我们有一个使用外部旅行系统并允许购买门票的项目 我们在本地保存票证信息 但实际状态在外部系统中定义 FirstCorpService srv1 new FirstCorpService FirstCorpTicket tkt1 srv1 b
  • 如何检查 IEnumerable 返回 null 或是否有任何行?

    我有一个类似于下面的 linq 查询 IEnumerable
  • 日期时间和时间戳有什么区别

    Sql Server 中日期时间和时间戳数据类型有什么区别 一个是日期和时间 另一个是每次更新行时更新的列类型 注意时间戳已被弃用 使用行版本反而
  • sum(Array) 表示索引超过矩阵维度[重复]

    这个问题在这里已经有答案了 我是Matlab的新手 我试图做一些图像匹配 图像X更大 图像Y更小 我们的目标是找到y与x的所有可能重叠 然后计算每个这样的RGB的平方差和重叠 即x 2 y 2 z 2 所以我在更大的图像中找到一个位置 i
  • 使用 $.support.cors = true; 是否安全?在 jQuery 中?

    我试图使用 jQuery 的 ajax 方法访问不同域上的 Web 服务 经过一些研究后 看起来它不允许这样做 这是为了防止跨站点脚本而设计的 我遇到了一个解决办法 其中包括这一行 support cors true 在我的 javascr
  • 基于位置的搜索结果查询速度慢

    我有一个查询 用于查找按位置排序的结果 结果还必须考虑增值税 因此这也在查询中 遗憾的是 在未缓存的情况下 查询可能需要 4 秒以上的时间才能运行 任何人都可以发现任何明显的问题或建议我可以做些什么来改进它吗 只是为了澄清查询中发生的情况
  • 在异步方法中返回和等待任务之间的区别[重复]

    这个问题在这里已经有答案了 下面的方法有什么区别吗 其中一个比另一个更可取吗 public static async Task SendAsync1 string to string subject string htmlBody awai
  • Sails 1.0 模型没有主键

    我尝试使用新版本 1 0 并重构我的项目 我有一个问题 但我现在不知道如何解决她 我的 BD 上的某些表没有主键 当我迁移到 sails 1 0 时 出现此错误 模型中friends 主键设置为id 但没有这样的 在模型上找到属性 您必须定
  • 如何将一种热编码的结果加入到数据帧中?

    我想在人口普查数据集中执行 one hot 编码 https archive ics uci edu ml datasets census venue 我想要执行的列位于国家 地区列中 因此我做了以下操作 import pandas as