将带有计数的pandas数据框中的不同项目的字符串转换为分类计数

时间:2018-10-13 09:43:31

标签: python pandas dataframe

我有一个包含多个项目的数据集,并且有多少数量。
(x表示数量,x从未出现在商品名称中)

                   items
    0                abc
    1  efg x 2, abc, def
    2            abc x 2
    3   efg x 3, def x 7
    4            abc x 5

我想将这些项目提取为单独的组成部分,并关联它们的计数:

         abc    def    efg
    0      1      0      0
    1      1      1      2
    2      2      0      0
    3      0      7      3
    4      5      0      0

到目前为止,我已经尝试过;从 Pandas split Column into multiple columns by comma

pd.concat([df, df[1].str.split(',', expand=True)], axis=1)

这给

                   items         0         1         2
    0                abc        abc      None      None
    1  efg x 2, abc, def    efg x 2       abc       def
    2            abc x 2    abc x 2      None      None
    3   efg x 3, def x 7    efg x 3   def x 7      None
    4            abc x 5    abc x 5      None      None  

我不知道如何进行:/,并且已经被困了好几天了。 即使最终产品不是我所要求的,任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:0)

以下内容如何:

val nn = points.map(p => (p, p.eucDist(queryPoint))).sortBy(_._2).map(_._1)