Python 统计数据帧中子元素的出现次数

Python 统计数据帧中子元素的出现次数,python,dataframe,Python,Dataframe,我有一个像熊猫一样的数据框 Tag ----- c#|.net javascript|html|React python|docker 我需要按groupby_标签={'c#','.net','python'计数} 我如何用python实现它?谢谢。可以通过计数器和itertools链完成 from itertools import chain from collections import Counter c = Counter(list(itertools.chain(*[i.split

我有一个像熊猫一样的数据框

Tag
-----
c#|.net
javascript|html|React
python|docker
我需要按
groupby_标签={'c#','.net','python'计数}


我如何用python实现它?谢谢。

可以通过计数器和itertools链完成

from itertools import chain
from collections import Counter

c = Counter(list(itertools.chain(*[i.split("|") for i in df["column-name"].tolist()])))
  • df[“column name”].tolist()提供一个列表

  • 在“|”处对列表中的每个条目进行迭代和拆分,可以得到更进一步的列表

  • 您可以将其与itertools链接以创建单个列表

  • 然后,您可以使用collections模块中的计数器获取所有项目的计数

  • 计数器包含总共有多少个c#、python、.net等标记

    分组方式:

    df[["A", "B"]] = df["column-name"].split("|", expand=True)
    
    为该列提供类似的数据帧

    >>> df
       col  A  B
    0  a|b  a  b
    1  c|d  c  d
    2  a|c  a  c
    3  b|d  b  d
    
    从这里可以通过使用
    df.groupby(by=[“a”,“B”],level=0)执行groupby


    groupby的另一种方法是
    explode
    函数

    是的,我希望得到这种输出。@susaanne您想知道有多少行包含c#,有多少行包含python等等?是的,那么我想我可以做一个GroupBy为什么在数据帧中有这样的数据?这些行是文件中的吗?我觉得这里可能根本不需要数据帧。@susanne,你想要多索引groupby之类的东西吗?