pandas.from_dummies # 熊猫。from_dummies ( data , sep = None , default_category = None ) [来源] # DataFrame从DataFrame虚拟变量创建一个分类。 反转 执行的操作get_dummies()。 1.5.0 版本中的新增内容。 参数: 数据数据框包含 1 和 0 整数列形式的虚拟编码变量的数据。 sep str,默认无虚拟类别的列名称中使用的分隔符,它们是指示类别名称与前缀之间的分隔符。例如,如果您的列名称为“prefix_A”和“prefix_B”,则可以通过指定 sep='_' go除下划线。 default_category None,Hashable 或 Hashables 的 dict,默认 None当某个值没有任何用 1 指定的列出类别时(即,如果一行中的所有虚拟值均为零),则默认类别是隐含类别。可以是所有变量的单个值,也可以是直接将默认类别映射到变量前缀的字典。 返回: 数据框从虚拟输入数据解码的分类数据。 加薪: 值错误 当输入DataFrame data包含 NA 值时。 当输入DataFrame data包含的列名称的分隔符与 指定的分隔符不匹配时sep。 当dict传递到的对象default_category不包含每个前缀的隐含类别时。 当一个值data被分配了多个类别时。 当default_category=None和 中的值data没有分配给它的类别时。 类型错误 当输入的data类型不是DataFrame. 当输入DataFrame data包含非虚拟数据时。 当传递的sep数据类型错误时。 当传递的default_category数据类型错误时。 也可以看看 get_dummies()Series将或转换DataFrame为虚拟代码。 Categorical表示经典中的分类变量。 笔记 传递的虚拟数据的列应仅包含 1 和 0 或布尔值。 例子 >>> df = pd.DataFrame({"a": [1, 0, 0, 1], "b": [0, 1, 0, 0], ... "c": [0, 0, 1, 0]}) >>> df a b c 0 1 0 0 1 0 1 0 2 0 0 1 3 1 0 0 >>> pd.from_dummies(df) 0 a 1 b 2 c 3 a >>> df = pd.DataFrame({"col1_a": [1, 0, 1], "col1_b": [0, 1, 0], ... "col2_a": [0, 1, 0], "col2_b": [1, 0, 0], ... "col2_c": [0, 0, 1]}) >>> df col1_a col1_b col2_a col2_b col2_c 0 1 0 0 1 0 1 0 1 1 0 0 2 1 0 0 0 1 >>> pd.from_dummies(df, sep="_") col1 col2 0 a b 1 b a 2 a c >>> df = pd.DataFrame({"col1_a": [1, 0, 0], "col1_b": [0, 1, 0], ... "col2_a": [0, 1, 0], "col2_b": [1, 0, 0], ... "col2_c": [0, 0, 0]}) >>> df col1_a col1_b col2_a col2_b col2_c 0 1 0 0 1 0 1 0 1 1 0 0 2 0 0 0 0 0 >>> pd.from_dummies(df, sep="_", default_category={"col1": "d", "col2": "e"}) col1 col2 0 a b 1 b a 2 d e