1. 编写代码清晰数据:
有一个模型叫 n-gram,表示文字或语言中的 n 个连续的单词组成的序列。在进 行自然语言分析时,使用 n-gram 或者寻找常用词组,可以很容易地把一句话分解成若干个 文字片段。
1 from urllib.request import urlopen 2 from bs4 import BeautifulSoup 3 4 def ngrams(input, n): 5 input = input.split(' ') 6 output = [] 7 for i in range (len(input)-n+1): 8 output.append(input[i:i+n]) 9 10 return output 11 12 html = urlopen("http://en.wikipedia.org/wiki/Python_(programming_language)") 13 bsObj = BeautifulSoup(html) 14 content = bsObj.find("div",{"id":"mw-content-text"}).get_text() 15 ngrams = ngrams(content,2) 16 print(ngrams) 17 print("2-grams count is : " +str(len(ngrams)))
ngrams 函数把一个待处理的字符串分成单词序列(假设所有单词按照空格分开),然后增 加到 n-gram 模型里形成以每个单词开始的二元数组。
2. 数据存储之后再清理:
a. OpenRefine: