2

分析包括以下内容:

  1. 文本数据中有多少个单词?
  2. 关键字在文本数据中出现了多少次?

    import os
    f= open(os.path.join(os.getcwd(), 'test1.txt'), 'r')
    dataString =f.read()
    

此代码只是打开下载的文本文件。我不知道下一步该做什么。我完全被困住了。请帮我。给我一些建议或提示也没关系..

4

4 回答 4

1

dataString中,您需要遍历每个单词并对其进行计数。因此,您需要一种方法来识别字符串中的单个单词。您可以使用该string.split方法或一些正则表达式来更清晰地拆分单词。

于 2013-05-05T14:43:56.363 回答
1

如果你想计算唯一词的数量,你需要做这样的事情来计算所有内容,而不用像“你好”这样的情况干扰计算。

print len(set(re.findall('\w+', dataString.lower()))) # Number of unique words
print len(re.findall('\w+', dataString.lower())) # Total number of words

要显示特定单词的计数,您可以使用列表理解

words = re.findall('\w+', dataString.lower())
print len([word for word in words if word == 'hello'])

或者你可以使用count

print words.count('hello')
于 2013-05-05T14:57:04.717 回答
0

我不会解决您的问题,但我会解释您将如何做每件事,因为创建 Stackoverflow 并不是为了为您完成工作,但我将向您指出您必须做的事情:

多少字:

dataString.split()将返回一个列表,其中每个项目都是文件中的一个单词,所以让我们这样做

一个单词重复多少次:

如果您想检查特定单词出现的次数,您现在知道如何获取列表中的每个单词,只需遍历该列表,您可以使用自己的计数器并在每次单词出现时向其添加 1,in dataString.split()或者您可以使用集合 Counter 类

于 2013-05-05T14:53:19.073 回答
-1

要获得字数,请使用

f = open('test.txt, 'r')
text = f.read()
f.close()
words = text.split(None)
ec = len(words)

要获取一个单词在文件中出现的次数,请添加

swc = 0
for word in words:
    if word == 'word2count':
        swc +=1`.
于 2013-05-05T14:52:19.767 回答