将文本转换为二进制列

时间:2020-05-23 00:45:48

标签: python pandas dataframe text

我的数据框中有一列,其中包含许多用逗号分隔的不同公司(假设还有更多行,其中有更多公司)。

company
apple,microsoft,disney,nike
microsoft,adidas,amazon,eBay

我想将其转换为出现的每个可能公司的二进制列。最终应该看起来像这样:

adidas  apple  amazon  eBay  disney  microsoft  nike  ...  last_store
0       1      0       0     1       1          1     ...  0
1       0      1       1     0       1          0     ...  0

1 个答案:

答案 0 :(得分:4)

让我们尝试get_dummies

s=df.brand.str.get_dummies(',')
   adidas  amazon  apple  disney  eBay  microsoft  nike
0       0       0      1       1     0          1     1
1       1       1      0       0     1          1     0