簡體   English   中英

pandas 系列的字典中的計數值

[英]Count values in dict of pandas series

我有一個 pandas 系列這樣的字典:

print(df['genres'])
0                        {'0': '1', '1': '4', '2': '23'}
1             {'0': '1', '1': '25', '2': '4', '3': '37'}
2                                             {'0': '9'}

print(type(df['genres']))
<class 'pandas.core.series.Series'>

print(type(df['genres'][0]))
<class 'dict'>

我想計算這些值以獲得如下結果:

{'1': 2, '4': 2, '9': 1, '23': 1, '25': 1, '37': 1}

我嘗試了以下方法:

print(Counter(chain.from_iterable(df.genres.values)))
Counter({'0': 3, '1': 2, '2': 2, '3': 1})

print(pd.Series(df['genres']).value_counts())
{'0': '1', '1': '4', '2': '23'}                                  1
{'0': '1', '1': '25', '2': '4', '3': '37'}                       1
{'0': '9'}                                                       1

我認為對於比我更有經驗的人來說,這很容易。 但我真的不明白...

嘗試:

pd.DataFrame(list(df.genres)).stack().value_counts().to_dict()

Output:

{'1': 2, '4': 2, '37': 1, '9': 1, '23': 1, '25': 1}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM