Go语言词频统计

huang_he_87 · · 1257 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

(
   )

() {
   (.Args) == || .Args[] == || .Args[] == {
      .(.(.Args[]))
      .()
   }
   frequencyForWord := []{} _filename := (.Args[:]) {
      (filenamefrequencyForWord)
   }
   (frequencyForWord)
   wordsForFrequency := (frequencyForWord)
   (wordsForFrequency)
}

(files []) []{
   .== {
      args := ([](files))
      _name := files {
         matcheserr := .(name)err != {
            args = (argsname) } matches != {
            args = (argsmatches...)
         }
      }
      args
   }
   files
}

(filename frequencyForWord []) {
   file *.err fileerr = .(filename)err != {
      .(err)
      }
   file.()
   (.(file)frequencyForWord)
}

(reader *.frequencyForWord []) {
   {
      lineerr := reader.()
      _word := (.(line)) {
         (word) > .||
            .(word) > {
            frequencyForWord[.(word)] += }
      }
      err != {
         err != .EOF {
            .(err)
         }
         }
   }
}

(s ) []{
   notALetter := (char ) { !.(char) }
   .(snotALetter)
}

(intForString []) [][]{
   stringsForInt := ([][](intForString))
   keyvalue := intForString {
      stringsForInt[value] = (stringsForInt[value]key)
   }
   stringsForInt
}

(frequencyForWord []) {
   words := ([](frequencyForWord))
   wordWidthfrequencyWidth := wordfrequency := frequencyForWord {
      words = (wordsword)
      width := .(word)width > wordWidth {
         wordWidth = width
      }
      width := (.(frequency))width > frequencyWidth {
         frequencyWidth = width
      }
   }
   .(words)
   gap := wordWidth + frequencyWidth - () - ()
   .(gap)
   _word := words {
      .(wordWidthwordfrequencyWidthfrequencyForWord[word])
   }
}

(wordsForFrequency [][]) {
   frequencies := ([](wordsForFrequency))
   frequency := wordsForFrequency {
      frequencies = (frequenciesfrequency)
   }
   .(frequencies)
   width := (.(frequencies[(frequencies)-]))
   .()
   _frequency := frequencies {
      words := wordsForFrequency[frequency]
      .(words)
      .(widthfrequency.(words))
   }
}



有疑问加站长微信联系(非本文作者)

本文来自:51CTO博客

感谢作者:huang_he_87

查看原文:Go语言词频统计

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1257 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传