Pandas series中的唯一值计数

2024-06-26 13:50:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个熊猫系列的长线。你知道吗

我想得到整个系列中单词的值计数。我试过了

df.value_counts().to_dict()

但它给出的是字符串级计数,而不是单词级计数。你知道吗

我怎样才能有效地做到这一点?。你知道吗

我的系列如下所示

print df.head(3)

0 4632 N. Rockwell Street, Chicago Rockwell Neighborhood 773 60625 4748 N Kedzie

1 4632 N. Rockwell Street, Chicago Rockwell' Bdoy 773 60625 4632 N Rock

2 4632 N. Rockwell Street, LA Rock hood Grill 773 60625 3658 W Lawren

我想生成一个字典,如下所示

a['4632'] = 3
a['Rockwell'] = 3
a['LA'] = 1

等等


Tags: to字符串streetdfvalue单词headdict
1条回答
网友
1楼 · 发布于 2024-06-26 13:50:01

我认为这里有一个更好的纯python解决方案,^{}将所有值连接到带有split的长字符串:

from collections import Counter

d = Counter(' '.join(df).split())
#if necessary convert to dict
#d = dict(Counter(' '.join(df).split()))

或者先将^{}^{}一起使用:

d = df.str.split(expand=True).stack().value_counts().to_dict()
print (d)
{'Rockwell': 4, '4632': 4, 'Street,': 3, '773': 3, '60625': 3, 'N.': 3, 'N': 2, 'Rock': 2, 'Chicago': 2, 'Kedzie': 1, 'Grill': 1, 'Neighborhood': 1, '3658': 1, 'Lawren': 1, 'W': 1, '4748': 1, 'LA': 1, 'hood': 1, "Rockwell'": 1, 'Bdoy': 1}

相关问题 更多 >