【发布时间】:2015-09-30 08:49:48
【问题描述】:
我有一个包含 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")
这很好用。但是,我想使用以原始数据框格式存储的数据来测试一个新样本 例如:
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 相同的格式?
【问题讨论】:
-
我对@987654324@不太熟悉,但是如果您只想将分类变量转换为pandas数据框中的二进制值(虚拟),那么顶级
pandas.get_dummies()函数非常适合您的目的. -
将它转换成公式实际上很重要,Patsy 允许我这样做。我不确定 get_dummies() 是否允许我这样做?
标签: python pandas scikit-learn patsy