gpt4 book ai didi

python - 用于嵌套表的 Pandas Get_dummies

转载 作者:太空宇宙 更新时间:2023-11-04 03:30:30 26 4
gpt4 key购买 nike

我希望利用 pandas get_dummy() 功能来编码一组(相当广泛的)分类变量。但是,数据当前采用嵌套表格格式。这意味着每一行代表另一个变量实例,例如

Instance, Cat_Col
1, John
1, Smith
2, Jane
3, Joe

现在我可以生成唯一变量的完整列表,我可以使用它来获取代表所有可能值的 get_dummies。然而,将嵌套表转换为这种新格式的单个实例行给我带来了一些麻烦。

非常感谢任何帮助谢谢

编辑:每个实例都应该有一个针对所有 Cat_col 值的虚拟编码结果

想法是结果是像这样的单个特征向量

Instance,Col_John,Col_Smith,Col_Jane,Col_Joe
1,1,1,0,0
2,0,0,1,0
3,0,0,0,1

我相信这是正确的编码,假设我们正在进行 1-hot 编码

最佳答案

您可能需要考虑使用 pivot_table 来实现您的目标。

import pandas as pd

df

Out[10]:
Instance Cat_Col
0 1 John
1 1 Smith
2 2 Jane
3 3 Joe

df['count'] = 1
df.pivot('Instance', 'Cat_Col', 'count').fillna(0)

Out[11]:
Cat_Col Jane Joe John Smith
Instance
1 0 0 1 1
2 1 0 0 0
3 0 1 0 0

如果您更喜欢使用get_dummies

result = pd.get_dummies(df.Cat_Col)
result['Instance'] = df.Instance
result = result.set_index('Instance')
result.groupby(level=0).apply(max)

Out[26]:
Jane Joe John Smith
Instance
1 0 0 1 1
2 1 0 0 0
3 0 1 0 0

关于python - 用于嵌套表的 Pandas Get_dummies,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31255865/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com