2015-07-11 179 views
2

我有一个11列大数据框。我需要将分类变量转换成二进制值,所以我使用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?

+0

叫我不是很熟悉'Patsy',但如果你只是想分类变量转化成数据帧的大熊猫二进制值(虚拟),然后顶层'pandas.get_dummies() '功能很适合你的目的。 –

+0

把它转换成Patsy允许我做的公式是非常重要的。我不确定get_dummies()是否允许我这样做? – bdevil

回答

0

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

build_design_matrices()