通过R语言统计考研英语(二)单词出现频率

时间:2022-12-23 22:39:15

通过R语言统计考研英语(二)单词出现频率

大家对英语考试并不陌生,首先是背单词,就是所谓的高频词汇。厚厚的一本单词,真的看的头大。最近结合自己刚学的R语言,为年底的考研做准备,想统计一下最近考研英语(二)真正单词出现的频率次数。

整体思路:

收集数据-->整理数据-->统计分析-->输出结果

使用工具:

`Rstudio,文本编辑器,CSV`

涉及到的包: "jiebaR"(中文分词引擎),“plyr",

第一步收集数据:

从网络搜索2013-2018考研英语二真题,存成txt格式。

通过R语言统计考研英语(二)单词出现频率

第二步整理数据

针对每个文件进行简单整理,去除不必要的文字。 例如:”2017年全国硕士研究生入学统一考试英语“、”答案 “,或者乱码之类。手工完成。

第三步:统计分析

3.1 打开R语言,安装所需要的包

    install.packages("jiebaRD") #安装jiebaR之前先安装"jiebaRD"
install.packages("jiebaR")
install.packages("plyr")
-- 加载包--
library(jiebaRD)
library(jiebaR)
library(plyr)
search() #查看已经安装的包

search() [1] ".GlobalEnv" "package:xlsx" 
[3] "package:xlsxjars" "package:rJava" 
[5] "package:wordcloud" "package:RColorBrewer" [7] "package:plyr" "package:jiebaR" 
[9] "package:jiebaRD" "tools:rstudio" 
[11] "package:stats" "package:graphics" 
[13] "package:grDevices" "package:utils" 
[15] "package:datasets" "package:methods" 
[17] "Autoloads" "package:base"

3.2加载文件,分析

setwd("d:/R") #设置文件所在根目录
--加载文件
test_file_2018 <- readLines("2018.txt",encoding = "UTF-8") #读取文件,编码格式是"UTF-8"
test_file_2017 <- readLines("2017.txt",encoding = "UTF-8")
test_file_2016 <- readLines("2016.txt",encoding = "UTF-8")
test_file_2015 <- readLines("2015.txt",encoding = "UTF-8")
test_file_2014 <- readLines("2014.txt",encoding = "UTF-8")
test_file_2013 <- readLines("2013.txt",encoding = "UTF-8") --合并文件 用c() 把多个元素组成一个向量。
test_file <- c(test_file_2018,test_file_2017,test_file_2016,test_file_2015,test_file_2014,test_file_2013)
test_file <-tolower(test_file) #把所有的字符转为小写
cutter=worker() #设置分词引擎
segWords <- segment(test_file,cutter) #对文本进行分词处理
--设置停顿词这里其实就是过滤词,一行一个单词,有些自认为很简单的词,比如:选项里 a,b,c,d,the,and,an 等等,或者先过滤这一步,等到统计频率出来,在根据需求一一添加即可。在相同的目录建一个文件"stopword.txt" f <- readLines("stopword.txt")
stopwords <- c(NULL)
for (i in 1:length(f))
{
stopwords[i]<- f[i]
} segWords<- filter_segment(segWords,stopwords) #过滤单词,filter_segment(源文本,过滤的词) segWords<-gsub("[0-9[:punct:]]+?","",segWords) #去除数字 0-9 表示数字,[:punct:]表示特殊字符 “! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~” tableWord <- count(segWords) #统计词频
view(tableWord)
停顿词示例stopword.txt:

通过R语言统计考研英语(二)单词出现频率

第四步、输出结果

write.csv(tableWord,"tableWord.csv",fileEncoding = "UTF-8")#处出结果存为tableWord.csv 文件。 

通过R语言统计考研英语(二)单词出现频率

参考来源:https://blog.csdn.net/zx403413599/article/details/46730801

通过R语言统计考研英语(二)单词出现频率的更多相关文章

  1. R语言统计学习-1简介

    一. 统计学习概述 统计学习是指一组用于理解数据和建模的工具集.这些工具可分为有监督或无监督.1.监督学习:用于根据一个或多个输入预测或估计输出.常用于商业.医学.天体物理学和公共政策等领域.2.无监 ...

  2. R语言基础入门之二:数据导入和描述统计

    by 写长城的诗 • October 30, 2011 • Comments Off This post was kindly contributed by 数据科学与R语言 - go there t ...

  3. R语言学习笔记(二)

    今天主要学习了两个统计学的基本概念:峰度和偏度,并且用R语言来描述. > vars<-c("mpg","hp","wt") &g ...

  4. R语言实战读书笔记&lpar;二&rpar;创建数据集

    2.2.2 矩阵 matrix(vector,nrow,ncol,byrow,dimnames,char_vector_rownames,char_vector_colnames) 其中: byrow ...

  5. R语言学习笔记(二十一五):如何如何提升R语言运算的性能以及速度

    在R中获得快速运行代码的方法 使用向量化运算 R语言的并行计算可以用parallel和foreach包 加快R运行速度还可以使用cmpfun()函数即字节码编译器 再者就是在R中调用C或C++ 同时还 ...

  6. R语言高性能编程(二)

    接着上一篇 一.减少内存使用的简单方法1.重用对象而不多占用内存 y <- x 是指新变量y指向包含X的那个内存块,只有当y被修改时才会复制到新的内存块,一般来说只要向量没有被其他对象引用,就可 ...

  7. R语言统计词频 画词云

    原始数据: 程序: #统计词频 library(wordcloud) # F:/master2017/ch4/weibo170.cut.txt text <- readLines("F ...

  8. R语言学习笔记(二): 类与泛型函数

    类 大多数R对象都是基于S3类(来源于第三代S语言),例如直方图函数hist()输出是一个包含多个组件的列表,它还有一个属性(attribute),用来指定列表的类,即histogram类. 泛型函数 ...

  9. C语言统计一个字符串中单词的个数

    假定每一个单词用空格隔开. 样例: 输入:how are you! 输出:3 两种方法: 一: #include <stdio.h> #include <string.h> # ...

随机推荐

  1. 基于百度定位及天气获取的DEMO &plus;fragment&plus;sharedpreference

    此工程较BaiduLocationXML相比:1.植入fragment,结合微信UI2.在原本主界面的button  textview  textview 移植到Fragment13.增加网络判断,网 ...

  2. Linux下反斜杠号&quot&semi;&bsol;&quot&semi;引发的思考

    今天在检查home目录时发现有一个名为“\”的文件,觉得很奇怪,从来没见过,就准备用Vim打开看看,很自然地输入命令查看一下,结果居然打不开. ubuntu@ubuntu:~$ vi \> ub ...

  3. FFmpeg发送流媒体的命令(UDP,RTP,RTMP)

    http://blog.csdn.net/leixiaohua1020/article/details/38283297

  4. 自动删除文件脚本(Linux shell脚本)

    每天在/home/face/capturepic/2017/目录下都会产生很多文件 /home/face/capturepic/2017/4/21 /home/face/capturepic/2017 ...

  5. web组件开发入门

    本文是学习慕课网阿当大话西游之WEB组件后的一个总结. 组件的分类 1 框架组件:依赖于某种框架的组件 2 定制组件:根据公司业务定制的组件 3 独立组件:不依赖框架的组件 定义和加载组件 解决css ...

  6. Vue实现懒加载的基本思路

    懒加载是前端开发者的基本功之一.实现懒加载肯定是要直接操作DOM的,这个没得跑,但我们可以想办法让流程尽可能优雅些. 基本结构 父组件是列表容器,子组件是列表中的项,如卡片.帖子等,承载图片的DOM对 ...

  7. oc中的枚举

    如果一个变量只有几种可能的值,比如星期有几天,一年有几个季节等.这个时候可以用枚举变量. 先定义类型再定义变量,如:enum siji{chun,xia,qiu,dong} 也可以定义匿名:enum{ ...

  8. python 实现ARP攻击

    注:使用这个脚本需要安装scapy 包 最好在linux平台下使用,因为scapy包在windows上安装老是会有各种问题 #coding:utf-8 #example :sudo python ar ...

  9. linux 定时备份mysql数据库

    首先要先搞清楚两个概念: ①.mysqldump,mysqldump是mysql的逻辑备份工具,它不是linux的命令,工作原理类似产生一些列sql语句,对数据库进行指定的逻辑备份. 最简洁的形式是: ...

  10. solidity合约面向对象

    1. 属性[状态变量]的访问权限 public  internal[合约属性默认的权限]  private 说明:属性默认访问全向为internal,internal和private类型的属性,外部是 ...