在pandas数据框中映射虚拟变量

时间:2015-07-11 18:36:53

标签: python pandas scikit-learn patsy

我有一个包含11列的大型DataFrame。我需要将分类变量转换为二进制值,因此我使用了Patsy

attributes = "admit ~ C(gender) + age + C(ethnicity) + C(state) + gpa + sci_gpa + mcat + C(major) + C(tier) + C(same_ins)"
y, X = dmatrices(attributes, df, return_type="dataframe")

这很有效。但是,我想使用以原始数据帧格式存储的数据来测试新样本 E.g:

gender    age    ethnicity    state    gpa    sci_gpa    gre    major    tier    same_ins
male      21     Asian        NV       3.4    3.2        .99    Physics  1       1     

有没有一种简单的方法可以将其转换为与X ??

相同的格式

1 个答案:

答案 0 :(得分:0)

我明白了。 Patsy存储dmatrix的元数据。它可以通过

调用
build_design_matrices()