在Pandas中执行get_dummies时保留其他变量

时间:2016-07-23 12:09:29

标签: python-2.7 pandas dummy-variable

我有一个带有ID变量和另一个分类变量的DataFrame。我想用get_dummies从分类变量中创建虚拟变量。

dum = pd.get_dummies(df)

但是,这会使ID变量消失。我稍后需要这个ID变量来合并到其他数据集。

有没有办法保留其他变量。在get_dummies的文档中,我找不到任何东西。谢谢!

2 个答案:

答案 0 :(得分:3)

我找到了答案。您可以将虚拟数据集连接到原始数据集,如下所示。只要您不在此期间重新订购数据。

df = pd.concat([df, dum], axis=1) 

答案 1 :(得分:2)

您还可以在执行get_dummies之前将原始列复制到新列中。例如,

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