详解Python用三种方式统计词频的方法
三种方法:
①直接使用dict
②使用defaultdict
③使用Counter
ps:`int()`函数默认返回0
①dict
text = "I'm a hand some boy!" frequency = {} for word in text.split(): if word not in frequency: frequency[word] = 1 else: frequency[word] += 1
②defaultdict
import collections frequency = collections.defaultdict(int) text = "I'm a hand some boy!" for word in text.split(): frequency[word] += 1
③Counter
import collections text = "I'm a hand some boy!" frequency = collections.Counter(text.split())
总结
以上所述是小编给大家介绍的Python用三种方式统计词频的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
相关推荐
-
Python实现统计英文文章词频的方法分析
本文实例讲述了Python实现统计英文文章词频的方法.分享给大家供大家参考,具体如下: 应用介绍: 统计英文文章词频是很常见的需求,本文利用python实现. 思路分析: 1.把英文文章的每个单词放到列表里,并统计列表长度: 2.遍历列表,对每个单词出现的次数进行统计,并将结果存储在字典中: 3.利用步骤1中获得的列表长度,求出每个单词出现的频率,并将结果存储在频率字典中: 4.以字典键值对的"值"为标准,对字典进行排序,输出结果(也可利用切片输出频率最大或最小的特定几个,因为经过排序
-
python jieba分词并统计词频后输出结果到Excel和txt文档方法
前两天,班上同学写论文,需要将很多篇论文题目按照中文的习惯分词并统计每个词出现的频率. 让我帮她实现这个功能,我在网上查了之后发现jieba这个库还挺不错的. 运行环境: 安装python2.7.13:https://www.python.org/downloads/release/python-2713/ 安装jieba:pip install jieba 安装xlwt:pip install xlwt 具体代码如下: #!/usr/bin/python # -*- coding:utf-8
-
python写程序统计词频的方法
在李笑来所著<时间当作朋友>中有这么一段: 可问题在于,当年我在少年宫学习计算机程序语言的时候,怎么可能想象得到,在20多年后的某一天,我需要先用软件调取语料库中的数据,然后用统计方法为每个单词标注词频,再写一个批处理程序从相应的字典里复制出多达20MB的内容,重新整理-- 在新书<自学是门手艺>中,他再次提及: 又过了好几年,我去新东方教书.2003 年,在写词汇书的过程中,需要统计词频,C++ 倒是用不上,用之前学过它的经验,学了一点 Python,写程序统计词频 --<
-
Python开发的单词频率统计工具wordsworth使用方法
使用方法: python wordsworth --filename textfile.txt python wordsworth -f textfile.txt 分析结果: 附上github项目地址:https://github.com/autonomoid/wordsworth
-
python实现简单中文词频统计示例
本文介绍了python实现简单中文词频统计示例,分享给大家,具体如下: 任务 简单统计一个小说中哪些个汉字出现的频率最高 知识点 1.文件操作 2.字典 3.排序 4.lambda 代码 import codecs import matplotlib.pyplot as plt from pylab import mpl mpl.rcParams['font.sans-serif'] = ['FangSong'] # 指定默认字体 mpl.rcParams['axes.unicode_minus
-
python利用多种方式来统计词频(单词个数)
python的思维就是让我们用尽可能少的代码来解决问题.对于词频的统计,就代码层面而言,实现的方式也是有很多种的.之所以单独谈到统计词频这个问题,是因为它在统计和数据挖掘方面经常会用到,尤其是处理分类问题上.故在此做个简单的记录. 统计的材料如下: document = [ 'look', 'into', 'my', 'eyes', 'look', 'into', 'my', 'eyes', 'the', 'eyes', 'the', 'eyes', 'the', 'eyes', 'not',
-
python 文本单词提取和词频统计的实例
这些对文本的操作经常用到, 那我就总结一下. 陆续补充... 操作: strip_html(cls, text) 去除html标签 separate_words(cls, text, min_lenth=3) 文本提取 get_words_frequency(cls, words_list) 获取词频 源码: class DocProcess(object): @classmethod def strip_html(cls, text): """ Delete html ta
-
详解Python用三种方式统计词频的方法
三种方法: ①直接使用dict ②使用defaultdict ③使用Counter ps:`int()`函数默认返回0 ①dict text = "I'm a hand some boy!" frequency = {} for word in text.split(): if word not in frequency: frequency[word] = 1 else: frequency[word] += 1 ②defaultdict import collections f
-
详解python运行三种方式
方式一 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码. linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗口如下: $ python Python 2.7.6 (default, Sep 9 2014, 15:04:36) [GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin Type "help", "copyright&
-
详解Python的三种拷贝方式
在练习列表的操作的时候我发现赋值之后的列表会随着被赋值的列表改变而改变,就像是C语言中用指向同一实际变量的指针进行操作一样.这是因为Python中有三种拷贝方式:浅拷贝.深拷贝和赋值拷贝. 赋值拷贝就像是定义新指针并指向了同一内存区域,对任意一个列表名进行操作,其他的也会变化. 深拷贝的作用是完全拷贝一个列表A并赋值给另一列表B.以下是深度拷贝与列表操作的样例.记得在使用深拷贝的时候要引入copy包. import copy #对列表的增删改 numbers_Ori = ['one', 'two
-
详解Python的三种可变参数
可变参数 可变参数应该最简单,在C/C++和Java等语言中都有,就是用*号来表示,例如 def testArg(*arg) 你可以传入任意多个元素(包括0)到参数中,在函数内部会自动认为是一个元组或列表 关键字参数 关键字参数在python中习惯用**kw表示,可以传入0到任意多个"关键字-值",参数在函数内部被当做一个字典结构.例如 def testArg(**kw) def testArg(city,**kw) 可以这样调用他 testArg(name='John',job='h
-
详解Thymeleaf的三种循环遍历方式
目录 循环遍历list集合 1.实体类 2.控制类 3.each.html 循环遍历map集合 1.控制类 2.each.html 循环遍历数组 循环遍历list集合 1.实体类 使用lombok插件,省去getter和setter,toString等方法的书写 代码 package com.springboot_thyleaf2.model; import lombok.Data; @Data public class User { private Integer id; private St
-
详解SpringBoot的三种缓存技术(Spring Cache、Layering Cache 框架、Alibaba JetCache 框架)
引言 前两天在写一个实时数据处理的项目,项目要求是 1s 要处理掉 1k 的数据,这时候显然光靠查数据库是不行的,技术选型的时候老大跟我提了一下使用 Layering-Cache 这个开源项目来做缓存框架. 之间问了一下身边的小伙伴,似乎对这块了解不多.一般也就用用 Redis 来缓存,应该是很少用多级缓存框架来专门性的管理缓存吧. 趁着这个机会,我多了解了一些关于 SpringBoot 中缓存的相关技术,于是有了这篇文章! 在项目性能需求比较高时,就不能单单依赖数据库访问来获取数据了,必
-
详解Python中4种超参自动优化算法的实现
目录 一.网格搜索(Grid Search) 二.随机搜索(Randomized Search) 三.贝叶斯优化(Bayesian Optimization) 四.Hyperband 总结 大家好,要想模型效果好,每个算法工程师都应该了解的流行超参数调优技术. 今天我给大家总结超参自动优化方法:网格搜索.随机搜索.贝叶斯优化 和 Hyperband,并附有相关的样例代码供大家学习. 一.网格搜索(Grid Search) 网格搜索是暴力搜索,在给定超参搜索空间内,尝试所有超参组合,最后搜索出最优
-
详解Python中四种关系图数据可视化的效果对比
python关系图的可视化主要就是用来分析一堆数据中,每一条数据的节点之间的连接关系从而更好的分析出人物或其他场景中存在的关联关系. 这里使用的是networkx的python非标准库来测试效果展示,通过模拟出一组DataFrame数据实现四种关系图可视化. 其余还包含了pandas的数据分析模块以及matplotlib的画图模块. 若是没有安装这三个相关的非标准库使用pip的方式安装一下即可. pip install pandas -i https://pypi.tuna.tsinghua.e
-
详解Rust中三种循环(loop,while,for)的使用
目录 楔子 loop 循环 while 循环 for 循环 楔子 我们常常需要重复执行同一段代码,针对这种场景,Rust 提供了多种循环(loop)工具.一个循环会执行循环体中的代码直到结尾,并紧接着回到开头继续执行. 而 Rust 提供了 3 种循环:loop.while 和 for,下面逐一讲解. loop 循环 我们可以使用 loop 关键字来指示 Rust 反复执行某一段代码,直到我们显式地声明退出为止. fn main() { loop { println!("
-
详解Python读取和写入操作CSV文件的方法
目录 什么是 CSV 文件? 内置 CSV 库解析 CSV 文件 读取 CSV 文件csv 将 CSV 文件读入字典csv 可选的 Python CSV reader参数 使用 csv 写入文件 从字典中写入 CSV 文件csv 使用 pandas 库解析 CSV 文件 pandas 读取 CSV 文件 pandas 写入 CSV 文件 最流行的数据交换格式之一是 CSV 格式.是需要通过键盘和控制台以外的方式将信息输入和输出的程序,通过文本文件交换信息是在程序之间共享信息的常用方法. 这里带和
随机推荐
- Linux有限状态机FSM的理解与实现
- javascript 面向对象全新理练之继承与多态
- Apache默认是不支持SSI如何给Apache增加SSI支持
- 举例讲解Java中Piped管道输入输出流的线程通信控制
- Java设计模式之备忘录模式_动力节点Java学院
- Android插件化之资源动态加载
- ajax中get和post的说明及使用与区别
- asp.net下生成99个不同的随机数
- 火车头discuz6.1 完美采集的php接口文件
- php检测文件编码的方法示例
- Windows系统下Node.js的简单入门教程
- 24款非常有用的 jQuery 插件分享
- Hadoop单机版和全分布式(集群)安装
- Windows程序内部运行机制实例详解
- PHP程序员玩转Linux系列 备份还原MySQL
- 自制基于jQuery的智能提示插件一枚
- 一个XML格式数据转换为图表的例子
- 软件路由器coyote Linux安装使用指南
- Android仿百度谷歌搜索自动提示框AutoCompleteTextView简单应用示例
- Android中使用AsyncTask做下载进度条实例代码