linux学习系列--词频统计(代码片段)

躬匠 躬匠     2022-11-30     189

关键词:

一、问题

写一个 bash 脚本以统计一个文本文件 words.txt 中每个单词出现的频率。

为了简单起见,你可以假设:

  • words.txt只包括小写字母和 ' ' 。
  • 每个单词只由小写字母组成。
  • 单词间由一个或多个空格字符分隔。

你也可以假设每行前后没有多余的空格字符。

示例:

假设words.txt有如下内容:

the day is sunny the the
the sunny is is

你的脚本应该输出(以词频降序排列):

the 4
is 3
sunny 2
day 1

备注:尽可能的使用管道命令

二、解答

方案1:

cat words.txt | awk ' for(i=1;i<=NF;i++)count[$i]++  END  for(k in count)print k" "count[k] ' | sort -rn

方案2:

cat words.txt | grep -Po '[a-z]+' | sort | uniq -c | sort -rn | awk 'print $2, $1'

注:上面的grep -Po也可以使用grep -Eo

方案3:

cat words.txt | xargs -n1 | awk '++word[$0] ENDfor(i in word) print i,word[i]' | sort -nrk 2

方案4:

cat words.txt | tr -s ' ' '\\n' | sort | uniq -c | sort -rn | awk 'print $2" "$1'

其中,tr -s ' ' '\\n' 用来换行

方案5:

sed -e "s/ /\\n/g" words.txt |sort |uniq -c |sort -rn|awk 'print $2" "$1'

注意:sed -e "s/ /\\n/g" 用来进行换行输出操作

⭐️leetcode解题系列⭐️192.统计词频(shell)(代码片段)

192.统计词频❤️原题❤️⭐️解题思路⭐️❄️写在最后❄️❤️原题❤️写一个bash脚本以统计一个文本文件words.txt中每个单词出现的频率。为了简单起见,你可以假设:words.txt只包括小写字母和''。每个单词只... 查看详情

spark学习02天-scala读取文件,词频统计(代码片段)

1.在本地安装jdk环境和scala环境 2.读取本地文件: scala>importscala.io.Sourceimportscala.io.Sourcescala>vallines=Source.fromFile("F:/ziyuan_badou/file.txt").getLines().toListlines:List[String]=List("With 查看详情

wordcount优化——单词及词频统计(代码片段)

...要多少时间1015Development开发500480·Analysis·需求分析(包括学习新技术)80100·DesignSpec·生成设计文档3030·DesignReview·设计复审(和同事 查看详情

201671010444词频统计软件项目报告(代码片段)

...英文文本,筛选出包含某个单词的句子。(在英语单词的学习过程中,最好是结合真题去学习。那么就可以把历年真题进行扫描录入,然后筛选包含某个单词的句子。)三.设计实现1.模块划分及其功能:扑获内容:把文件或网页... 查看详情

201671010432词频统计软件项目报告(代码片段)

...了以前没有的兴趣,在以后的课下时间一定要挤出时间来学习这个有趣的语言。功能只实现最简单的,统计出了词频,但是交上的都是我理解的。希望随着我的学习,后期逐渐对这个程序优化,使之成为一个比较成熟的小程序。... 查看详情

综合练习:词频统计(代码片段)

1.英文词频统计下载一首英文的歌词或文章a=‘‘‘WakingupIseethateverythingisokThefirsttimeinmylifeandnowit‘ssogreatSlowingdownIlookaroundandIamsoamazedIthinkaboutthelittlethingsthatmakelifegreatIwouldn‘tchangeathingaboutitT 查看详情

英文词频统计(代码片段)

词频统计预处理下载一首英文的歌词或文章将所有,.?!’:等分隔符全部替换为空格将所有大写转换为小写生成单词列表生成词频统计排序排除语法型词汇,代词、冠词、连词输出词频最大TOP10word=‘‘‘Lately,I‘vebeen,I‘vebeenlosi... 查看详情

英语词频统计(代码片段)

song=‘‘‘sunday‘scomingiwannadrivemycartoyourapartmentwithpresentlikeastarforecastersaidtheweathermayberainyhardbutiknowthesunwillshineforusohlazyseagullflymefromthedarkidressmyjeansandfeedmymonkeybana 查看详情

1.英文词频统2.中文词频统计(代码片段)

1.英文词频统news=‘‘‘GuoShuqing,headofthenewlyestablishedChinabankingandinsuranceregulatorycommission,wasappointedPartysecretaryandvice-governorofthecentralbankonMonday,accordingtoanannouncementpublishedont 查看详情

英文词频统计(代码片段)

str=‘‘‘Inhisspeechattheclosingsessionofthisyear‘sNationalPeople‘sCongress,ChinesePresidentXiJinpingreiteratedthetwocentenarygoalsandemphasizedavisionofa"CommunityofSharedFutureforMankind".Theaspectsof 查看详情

综合练习:词频统计(代码片段)

综合练习词频统计预处理下载一首英文的歌词或文章将所有,.?!’:等分隔符全部替换为空格str=‘‘‘PassionissweetLovemakesweakYousaidyoucherisedfreedomsoYourefusedtoletitgoFollowyourfaithLoveandhateneverfailedtoseizethedayDon‘tgiveyourselfawayOhwhen 查看详情

综合练习:英文词频统计(代码片段)

词频统计预处理下载一首英文的歌词或文章将所有,.?!’:等分隔符全部替换为空格将所有大写转换为小写生成单词列表生成词频统计排序排除语法型词汇,代词、冠词、连词输出词频最大TOP10song=‘‘‘Ifyousayyou’rethefireworkatthe... 查看详情

综合练习:词频统计(代码片段)

1.英文词频统下载一首英文的歌词或文章将所有,.?!’:等分隔符全部替换为空格将所有大写转换为小写生成单词列表生成词频统计排序排除语法型词汇,代词、冠词、连词输出词频最大TOP201.英文词频统下载一首英文的歌词或文... 查看详情

综合练习:英文词频统计(代码片段)

词频统计预处理下载一首英文的歌词或文章将所有,.?!’:等分隔符全部替换为空格将所有大写转换为小写生成单词列表生成词频统计排序排除语法型词汇,代词、冠词、连词输出词频最大TOP10song=‘‘‘Troublewillfindyounomatterwherey... 查看详情

英文小说词频统计(代码片段)

strYoung=‘‘‘youngforyouGalasunday‘scomingiwannadrivemycartoyourapartmentwithpresentlikeastarforecastersaidtheweathermayberainyhardbutiknowthesunwillshineforusohlazyseagullflymefromthedarkidressmyjeans 查看详情

spark---词频统计(代码片段)

利用python来操作spark的词频统计,现将过程分享如下:1.新建项目:(这里是在已有的项目中创建的,可单独创建wordcount项目)①新建txt文件:wordcount.txt(文件内容:跟词频统计(一)中文件一致)②创建py文件:word.pyfrompysparkimportSparkContextfrompyspar... 查看详情

中文词频统计(代码片段)

...进行中文分词。pipinstalljiebaimportjiebalist(jieba.lcut(news))生成词频统计排序排除语法型词汇,代词、冠词、连词输出词频最大TOP20 importjiebafo=open("xiyouji 查看详情

中文词频统计(代码片段)

...进行中文分词。pipinstalljiebaimportjiebalist(jieba.lcut(news))生成词频统计排序排除语法型词汇,代词、冠词、连词输出词频最大TOP20 将代码与运行结果截图发布在博客上。importjieb 查看详情