如何将pandas DataFrame多列分类变量转虚拟变量并合并为单一行代码
多列同时生成虚拟变量的简化写法
你可以直接向pd.get_dummies()传入包含目标列的DataFrame子集,无需逐列单独调用,合并后的一行代码如下:
result = pd.get_dummies(df[['height', 'weight', 'age']], prefix=['height', 'weight', 'age'])
如果你设置的前缀和原列名完全相同,还可以进一步省略prefix参数,pandas会默认使用原列名作为虚拟变量的前缀:
result = pd.get_dummies(df[['height', 'weight', 'age']])
上述两种写法的输出效果,和你原来三行代码分别计算再拼接的结果完全一致。
内容的提问来源于stack exchange,提问作者Nicole Oppenheim
相关产品推荐
相关产品推荐

