我有一个包含多个分类变量的数据框,我需要将它们转换为虚拟变量。性别和地区(4种类型)很容易使用pd.get_dummies
。但是,我有几个变量是yes/no
。我该怎么做才能使伪yes
和no
列包含变量名?例如,“married”变量将变成married_yes
和{
这是我当前的代码和前五行的屏幕截图:
genderdummy=pd.get_dummies(bank_df['gender'])
regiondummy=pd.get_dummies(bank_df['region'])
marrieddummy=pd.get_dummies(bank_df['married'])
cardummy=pd.get_dummies(bank_df['car'])
savingsdummy=pd.get_dummies(bank_df['savings_acct'])
currentdummy=pd.get_dummies(bank_df['current_acct'])
mortgagedummy=pd.get_dummies(bank_df['mortgage'])
pepdummy=pd.get_dummies(bank_df['pep'])
newdata_df=pd.concat([genderdummy,regiondummy,marrieddummy,cardummy,savingsdummy,currentdummy,mortgagedummy,pepdummy], axis=1)
newdata_df.head()
因此,根据建议,我现在得到的是:
^{pr2}$
如果你改变你的方法,它会自动做到这一点。您只需要对数据帧而不是序列调用
pd.get_dummies
:或者可以使用
^{pr2}$prefix
参数显式地:更新:
使用变量,它应该如下所示:
注意
dummy_vars
只是bank_df
中列的名称。在在pandas.get_dummies()中使用
prefix
参数输出
^{pr2}$相关问题 更多 >
编程相关推荐