【问题标题】:How to map singe df col into multiple 'checkbox' cols [duplicate]如何将单个df列映射到多个“复选框”列[重复]
【发布时间】:2020-12-17 14:55:53
【问题描述】:

我正在尝试准备一个 csv,以便从另一个工具导出的 csv 导入调查工具。我需要将一个 df 中的一列值映射到多个列中,以满足另一个 csv 的复选框。

例如我的起始 df (df1) 和目标 df (df2) 看起来像:

import pandas as pd
df1 = pd.DataFrame({'user': ['Bob', 'Jane', 'Alice']})
df2 = pd.DataFrame({'Bob': [0,0,0], 'Jane': [0,0,0], 'Alice': [0,0,0]}) 

我试过了:

for value in df1["User"]:
    if value == "Bob":
        df2['Bob'] = 1
    elif value == "Jane":
        df2['Jane'] = 1
    elif value == "Alice":
        df2['Alice'] = 1

但我最终在每一行和每一列中都有一个“1”。

结果:


  Bob Jane Alice
0   1   1   1
1   1   1   1
2   1   1   1

我正在尝试创建:

  Bob Jane Alice
0   1   0   0
1   0   1   0
2   0   0   1

我错过了什么?

【问题讨论】:

  • 这是我的第一篇文章,因此也感谢任何有关构建好问题的反馈
  • 预期输出是什么?
  • 添加了预期结果

标签: python


【解决方案1】:

尝试使用:

pd.get_dummies(df1["User"])

【讨论】:

    猜你喜欢
    • 2022-01-06
    • 2011-10-13
    • 2023-02-22
    • 2020-10-04
    • 1970-01-01
    • 2019-03-16
    • 1970-01-01
    • 2018-10-09
    • 2018-02-13
    相关资源
    最近更新 更多