zoukankan      html  css  js  c++  java
  • 关于单词统计的问题

    要求:

    第0步:输出某个英文文本文件中 26 字母出现的频率,由高到低排列,并显示字母出现的百分比,精确到小数点后面两位。

       字母频率 = 这个字母出现的次数 / (所有A-Z,a-z字母出现的总数) 如果两个字母出现的频率一样,那么就按照字典序排列。

       如果 S 和 T 出现频率都是 10.21%, 那么, S 要排在T 的前面。

    第1步:输出单个文件中的前 N 个最常出现的英语单词。

      作用:一个用于统计文本文件中的英语单词出现频率。

      单词:以英文字母开头,由英文字母和字母数字符号组成的字符串视为一个单词。单词以分隔符分割且不区分大小写。在输出时,所有单词都用小写字符表示。 英文字母:A-Z,a-z 字母数字符号:

         A-Z,a-z,0-9  

      分割符:空格,非字母数字符号 例:good123是一个单词,123good不是一个单词。good,Good和GOOD是同一个单词。  

      功能1:输出文件中所有不重复的单词,按照出现次数由多到少排列,出现次数同样多的,以字典序排列。

      功能2: 指定文件目录,对目录下每一个文件执行统计的操作。 

      功能3:指定文件目录,是会递归遍历目录下的所有子目录的文件进行统计单词的功能。

      功能4:输出出现次数最多的前 n 个单词。

    第2步:第二步: 支持 stop words

      在一本小说里, 频率出现最高的单词一般都是 "a", "it", "the", "and", "this", 这些词, 可以做一个 stop word 文件 (停词表), 在统计词汇的时候,跳过这些词。 我们把这个文件叫 "stopwords.txt"   file.

    第3步: 想看看常用的短语是什么

       先定义短语:"两个或多个英语单词, 它们之间只有空格分隔". 请看下面的例子:   hello world //这是一个短语   hello, world //这不是一个短语

    第4步:把动词形态都统一之后再计数。

      想找到常用的单词和短语,但是发现英语动词经常有时态和语态的变化,导致同一个词,同一个短语却被认为是不同的。 怎么解决这个问题呢? 假设我们有这样一个文本文件,这个文件的每一行都

      是这样构成: 动词原型 动词变形1 动词变形2... ,词之间用空格分开。 e.g. 动词 TAKE 有下面的各种变形:take takes took taken taking 我们希望在实现上面的各种功能的时候,有一个选项, 就

      是把动词的各种变形都归为它的原型来统计。 功能 支持动词形态的归一化。

  • 相关阅读:
    03.yaml语法和playbook写法
    02.ansible的常用模块
    01.ansible基本配置与使用
    24.删除表名
    23.MySQL的备份与恢复
    22.更改表名
    MySQL的表操作
    MySQL的库操作
    MySQL的用户管理
    数据库及MySQL概述
  • 原文地址:https://www.cnblogs.com/leity/p/11008176.html
Copyright © 2011-2022 走看看