Python 统计红楼梦、Jane Eyre词频方法
生活随笔
收集整理的這篇文章主要介紹了
Python 统计红楼梦、Jane Eyre词频方法
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
包含去除標(biāo)點(diǎn)符號(hào)和換行、空格等因素
import pandas as pddef question1():words = ['賈寶玉', '寶玉', '林黛玉', '黛玉']with open("HLM-UTF-8.txt", 'r', encoding='UTF-8') as r:lines = r.readlines()with open('result1.txt', 'w', encoding='UTF-8') as w:for word in words:w.write(word + '出現(xiàn)的行數(shù)及行如下:\n')for line in lines:if word in line:w.write(str(lines.index(line) + 1) + line)w.close()r.close()def question2():result = {}with open("HLM-UTF-8.txt", 'r', encoding='UTF-8') as r:lines = r.readlines()for line in lines:line = line.strip()for char in '!"#$&()*+,-./:;<=>?@[\\]^_{|}·~‘’\n\'"#$%&'()*+,-/:;<=>@[\]^_`{|}~⦅⦆「」、 、〃〈〉《》「」『』【】〔〕〖〗?????〝〞????–—‘’?“”??…?﹏﹑﹔·!?。。\u3000':line = line.replace(char, "")for char in line:if char in list(result.keys()):result[char] += 1else:result[char] = 1df = pd.DataFrame(result, index=[0]).Tdf.to_csv("result2.csv", encoding='utf-8-sig')r.close()def question3():result = {}with open('JaneEyre.txt', 'r') as r:lines = r.readlines()for line in lines:line = line.lower()for char in '!"#$&()*+,-./:;<=>?@[\\]^_{|}·~‘’\u3000\n\'':line = line.replace(char, "")words = line.split(' ')for word in words:if word in list(result.keys()):result[word] += 1else:result[word] = 1del result['']df = pd.DataFrame(result, index=[0]).Tdf.to_csv("result3.csv")r.close()if __name__ == '__main__':# question1()question2()# question3()總結(jié)
以上是生活随笔為你收集整理的Python 统计红楼梦、Jane Eyre词频方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: iOS自定义字体及类目
- 下一篇: 短线必看的60分线及分析60分钟K线图表