博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
复合数据类型,英文词频统计
阅读量:4636 次
发布时间:2019-06-09

本文共 1690 字,大约阅读时间需要 5 分钟。

作业要求来源:

1.列表,元组,字典,集合分别如何增删改查及遍历。

列表

增:

删:

查:

遍历:

元组(元组是不可变类型,不能更新或者改变元组的元素

增:

删:

查:

遍历:

字典

增:

删:

改:

查:

遍历:

集合(由于集合是无序的又没有索引,所以改不了

增:

删:

遍历:

2.总结列表,元组,字典,集合的联系与区别。参考以下几个方面:

括号

列表用“[]”表示,元组用“()”表示,字典用“{}”表示,集合用“{}”表示;

有序无序

列表有序,元组有序,字典无序,集合无序;

可变不可变

列表可变,元组不可变,字典可变,集合可变;

重复不可重复

列表可重复,元组可重复,字典键不可重复,值可以重复,集合不可重复;

存储与查找方式

列表以值的方式存储为值,可通过索引查找;

元组以值的方式存储为值,可通过索引查找;

字典以键值对的方式存储为值,一般通过键查找;

集合以值的方式存储为值,可以通过set()来将序列和字典转换为集合。

3.词频统计

1.下载一长篇小说,存成utf-8编码的文本文件 file

2.通过文件读取字符串 str

3.对文本进行预处理

4.分解提取单词 list

5.单词计数字典 set , dict

6.按词频排序 list.sort(key=lambda),turple

7.排除语法型词汇,代词、冠词、连词等无语义词

  自定义停用词表

  或用stops.txt

8.输出TOP(20)

9.可视化:词云

  排序好的单词列表word保存成csv文件

  import pandas as pd

  pd.DataFrame(data=word).to_csv('big.csv',encoding='utf-8')

  线上工具生成词云:

代码

import stringimport pandas as pddef statistics():    # 文件读取小说    f = open("The Hound of Baskervilles.txt", "r", encoding='utf-8')    novel = f.read()    f.close()    # 对文本进行预处理    novel = novel.lower()    # 分解提取单词 list    for c in string.punctuation:        novel = novel.replace(c, " ")    novel = novel.split()    # 读取无语义词    s = open("stopwords.txt", "r", encoding='utf-8')    stopWords = s.read()    s.close()    # 对无语义词进行整理    for c in {
"\n","'"}: stopWords = stopWords.replace(c," ") stopWords = stopWords.split() # 排除语法型词汇,代词、冠词、连词等无语义词 wordsSet = set(novel) - set(stopWords) wordsCount = {} # 按词频排序 for i in wordsSet: wordsCount[i] = novel.count(i) top = list(wordsCount.items()) top.sort(key=lambda x: x[1], reverse=True) # 输出TOP(20) pd.DataFrame(data=top[0:20]).to_csv('top20.csv', encoding='utf-8')statistics()

效果图

csv

词云

转载于:https://www.cnblogs.com/Evariste-Galois/p/10537649.html

你可能感兴趣的文章
图片上传
查看>>
H5学习之旅-H5列表(8)
查看>>
华为机试题【10】-求数字基root
查看>>
ISLR—第二章 Statistical Learning
查看>>
软件与程序
查看>>
tiny4412u-boot烧写及根文件系统制作(不进入终端问题)
查看>>
谁说菜鸟不会数据分析--读书笔记
查看>>
nodejs里的module.exports和exports
查看>>
搭建wordpress开发环境
查看>>
CentOS 6.9下的Setup工具(用于管理服务/防火墙/网络配置/验证服务)
查看>>
Mac 10.12彻底关闭Dashboard
查看>>
mybatis大于小于等于
查看>>
mac下安装前端模板引擎Jinja2
查看>>
python 字典
查看>>
How to: Build a Client Application
查看>>
C#将dll打包到程序中
查看>>
AJAX只支持字符类数据返回,不支持文件下载
查看>>
win10使用Composer-Setup安装Composer以及使用Composer安装Yii2最新版
查看>>
Python的装饰器
查看>>
人格差异
查看>>