使用其他样式将pandas数据框转换为pandas数据框

时间:2016-05-27 01:55:40

标签: python pandas dataframe ipython

我的数据框包含动物的ID和它们所属的类型,如下所示

ID  Class
1   1
2   1
3   0
4   4
5   3
6   2
7   1
8   0

我想将它转换为带有标题行上的类的新样式,如下所示。

ID  0   1   2   3   4
1       1           
2       1           
3   1               
4                   1
5               1   
6           1       
7       1           
8   1               

你能帮我用python

做些什么

1 个答案:

答案 0 :(得分:1)

请参阅get_dummies()

>>> print df

   ID  Class
0   1      1
1   2      1
2   3      0
3   4      4
4   5      3
5   6      2
6   7      1
7   8      0

>>> df2 = pd.get_dummies(df, columns=['Class'])
>>> print df2

   ID  Class_0  Class_1  Class_2  Class_3  Class_4
0   1        0        1        0        0        0
1   2        0        1        0        0        0
2   3        1        0        0        0        0
3   4        0        0        0        0        1
4   5        0        0        0        1        0
5   6        0        0        1        0        0
6   7        0        1        0        0        0
7   8        1        0        0        0        0

如果您想要删除列标题中的“Class_”,请将prefixprefix_sep都设置为空字符串:

df2 = pd.get_dummies(df, columns=['Class'], prefix='', prefix_sep='')