尝试创建字数统计功能
Trying to create a word count function
我正在尝试创建一个函数:
word_count("I do not like it Sam I Am")
取回像这样的字典:
{'i': 2, 'do': 1, 'it': 1, 'sam': 1, 'like': 1, 'not': 1, 'am': 1}
我不知道如何开始。
def word_count(sentence):
d = sentence.lower().split()
d = {x: d.count(x) for x in d}
return d
使用 pandas 可以工作:
import pandas as pd
def word_count(string):
df = pd.DataFrame(string.split())
df['count'] = 1
grouped = df.groupby(by=0).agg({'count':'count'}).reset_index()
output = dict()
for idx, row in grouped.iterrows():
output[row[0]] = row['count']
return output
输出:
{'Am': 1, 'I': 2, 'Sam': 1, 'do': 1, 'it': 1, 'like': 1, 'not': 1}
使用collections.Counter
:
Counter(s.lower().split())
输出:
Counter({'am': 1, 'do': 1, 'i': 2, 'it': 1, 'like': 1, 'not': 1, 'sam': 1})
我正在尝试创建一个函数:
word_count("I do not like it Sam I Am")
取回像这样的字典:
{'i': 2, 'do': 1, 'it': 1, 'sam': 1, 'like': 1, 'not': 1, 'am': 1}
我不知道如何开始。
def word_count(sentence):
d = sentence.lower().split()
d = {x: d.count(x) for x in d}
return d
使用 pandas 可以工作:
import pandas as pd
def word_count(string):
df = pd.DataFrame(string.split())
df['count'] = 1
grouped = df.groupby(by=0).agg({'count':'count'}).reset_index()
output = dict()
for idx, row in grouped.iterrows():
output[row[0]] = row['count']
return output
输出:
{'Am': 1, 'I': 2, 'Sam': 1, 'do': 1, 'it': 1, 'like': 1, 'not': 1}
使用collections.Counter
:
Counter(s.lower().split())
输出:
Counter({'am': 1, 'do': 1, 'i': 2, 'it': 1, 'like': 1, 'not': 1, 'sam': 1})