Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 统计列表列中元素的出现次数(扭曲)_Python_List_Pandas_Count - Fatal编程技术网

Python 统计列表列中元素的出现次数(扭曲)

Python 统计列表列中元素的出现次数(扭曲),python,list,pandas,count,Python,List,Pandas,Count,我有一列名为“作者背景”的列表,我想对其进行分析。实际列由8.000行组成。我的目标是了解总共有多少不同的元素(在列的所有列表中),并计算每个元素出现在其中的列表数量 我的专栏是什么样子的: df.author_background 0 [Professor for Business Administration, Harvard Business School] 1 [Professor for Industrial Engineering, University of Oakl

我有一列名为“作者背景”的列表,我想对其进行分析。实际列由8.000行组成。我的目标是了解总共有多少不同的元素(在列的所有列表中),并计算每个元素出现在其中的列表数量

我的专栏是什么样子的:

df.author_background

0    [Professor for Business Administration, Harvard Business School]
1    [Professor for Industrial Engineering, University of Oakland]
2    [Harvard Business School]
3    [CEO, SpaceX]

desired output 

0     Harvard Business School                   2
1     Professor for Business Administration     1
2     Professor for Industrial Engineering      1
3     CEO                                       1
4     University of Oakland                     1 
5     SpaceX                                    1
我想知道“工商管理教授”、“工业工程教授”、“哈佛商学院”等在专栏中出现的频率。我不知道还有很多标题

基本上,我想对列使用pd.value\u计数。但是,这是不可能的,因为它是一个列表。

是否有其他方法计算每个元素的出现次数

如果这更有帮助的话:我还得到了一个列表,其中包含列表的所有元素(不是嵌套的)。

您可以尝试这样做:

el = pd.Series([item for sublist in df.author_background for item in sublist])
df = el.groupby(el).size().rename_axis('author_background').reset_index(name='counter')

通过以下方式将其全部转换为单个系列:


现在,您可以调用
value\u counts()
来获得结果。

实际数据是否总是像您的示例一样长度为1的列表?不幸的是,不是。有些列表只包含1个元素,其他列表最多包含4个元素。您能否显示最后一行中所写内容的示例@汉娜:当然。我刚刚使用.sum()来获取非嵌套列表:df.author\u background.sum()非常感谢!很好用
pd.Series([bg for bgs in df.author_background for bg in bgs])