计算列表字典中的值,并使用 Pandas 连接输出的键和值名称

Rob*_*ohn 2 python dictionary python-3.x pandas

我需要帮助从字典(python3)中获取一些输出:

{'horse': ['brown', 'black'], 'duck': ['brown', 'black', 'brown', 'grey', 'brown']}
Run Code Online (Sandbox Code Playgroud)

需要的输出:

black horse: 1
brown horse: 1
grey horse: 0
black duck: 1
brown duck: 3
grey duck: 1
Run Code Online (Sandbox Code Playgroud)

有人可以提供解决方案吗?

May*_*wal 5

如果您只想在 Python 中执行此操作:

您可以Countercollections模块使用:

In [622]: from collections import Counter
In [623]: d = {'horse': ['brown', 'black'], 'duck': ['brown', 'black', 'brown', 'grey', 'brown']} 

In [611]: l = [j + ' ' + key for key, value in d.items() for j in value]

In [620]: Counter(l)                   
Out[620]: 
Counter({'brown horse': 1,
     'black horse': 1,
     'brown duck': 3,
     'black duck': 1,
     'grey duck': 1})
Run Code Online (Sandbox Code Playgroud)