当前位置: 首页 > news >正文

青岛市做网站优化哪里有网站直播做美食的

青岛市做网站优化,哪里有网站直播做美食的,免费网站使用,河北建设工程信息网官方网站文章目录 #x1f4da;输入及输出#x1f4da;代码实现 #x1f4da;输入及输出 输入#xff1a;读取一个input.txt#xff0c;其中包含单词及其对应的TED打卡号。 输出 output.txt#xff1a;包含按频率降序排列的每个单词及其计数#xff08;这里直接用于后续的词云… 文章目录 输入及输出代码实现 输入及输出 输入读取一个input.txt其中包含单词及其对应的TED打卡号。 输出 output.txt包含按频率降序排列的每个单词及其计数这里直接用于后续的词云图生成。 output_word.json包含每个单词及其计数以及与之关联的TED打卡号列表生成一个json文件按字母序排列用于后续网页数据导入。 output2.txt按字母顺序排序的所有单词即导出一个单词词表可以导入到不背单词里生成自定义词表。 word_count.txt记录截至每篇TED打卡号时涉及到的单词总数该数据用于绘制后续的折线图。 生成词云在处理数据后脚本读取output.txt并生成基于单词频率的词云并将词云保存至指定目录。 代码实现 逻辑梳理 在函数中使用了两个defaultdict一个用于统计单词出现的频率另一个用于记录单词对应的打卡号集合。打开输入文件并逐行读取单词及其对应的打卡号对于每个单词统计其出现的频率并将打卡号添加到对应的集合中。同时对每篇TED的打卡号进行统计记录每篇 TED 结束时涉及到的当前单词总数量写入output_word_count_txt对应word_count.txt。统计完所有单词后对单词频率进行排序并将排序后的结果写入output_txt_file对应input.txt。将单词、频率和相应的排序过后的打卡号列表存储为 JSON 文件对应output_word.json。将所有单词按字母顺序写入output_txt_file_sorted中对应output2.txt。 具体详见注释↓ import json from collections import defaultdict from wordcloud import WordCloud import matplotlib.pyplot as plt import redef count_word_frequency(input_file, output_txt_file, output_word_json_file, output_txt_file_sorted, output_word_count_txt):# 使用defaultdict初始化两个字典用于统计单词出现频率、单词对应打卡号集合word_count defaultdict(int)# 设置为set集合自动去重单词对应的打卡号集合word_numbers defaultdict(set) current_number 0 # 当前打卡号初始化为0# 创建一个空的单词计数分析文本文件open(output_word_count_txt, w).close()# 打开输入文件并逐行读取单词及其对应的数字with open(input_file, r) as file:for line in file:line_parts line.strip().split()word .join(line_parts[:-1]) # 提取单词number int(line_parts[-1]) # 提取打卡号# 如果当前打卡号与前一个不同即已经开始下一篇了记录前一个打卡号即刚刚完成的那一篇对应的截至该篇的单词总数到output_word_count_txt中if number ! current_number:current_number number# 用sum函数来统计word_numbers中非空集合的数量即当前TED打卡号下已经出现过的单词数current_unique_count sum(1 for word_set in word_numbers.values() if len(word_set) 0)with open(output_word_count_txt, a) as count_file:count_file.write(f{current_number-1} {current_unique_count}\n)# 统计单词的频率及相应的打卡号这里排除了同一个单词在一片篇TED里多次记录的重复计数情况if number not in word_numbers[word]: word_count[word] 1word_numbers[word].add(number) # 对每个单词的打卡号进行排序使得最后TED打卡号列表按序显示for word in word_numbers:word_numbers[word] sorted(word_numbers[word])# 补充记录最后一个打卡号对应的截至该篇的单词总数到output_word_count_txt中current_unique_count sum(1 for word_set in word_numbers.values() if len(word_set) 0)with open(output_word_count_txt, a) as count_file:count_file.write(f{current_number} {current_unique_count}\n)# 对单词频率进行排序并将排序后的结果写入输出文本文件中sorted_words sorted(word_count.items(), keylambda x: (-x[1], x[0]))with open(output_txt_file, w) as file_txt:for word, count in sorted_words:file_txt.write(word str(count) \n)# 将单词、频率和相应的打卡号列表存储为JSON文件word_data []for word, count in word_count.items():word_entry {word: word,count: count,numbers: list(word_numbers[word]) }word_data.append(word_entry)word_data_sorted sorted(word_data, keylambda x: x[word])with open(output_word_json_file, w) as file_word_json:json.dump(word_data_sorted, file_word_json, indent4)# 将所有单词按字母顺序写入输出文本文件中all_words list(word_count.keys())all_words.sort()with open(output_txt_file_sorted, w) as file_txt_sorted:file_txt_sorted.write(\n.join(all_words) \n)# 定义输入文件和输出文件的名称 input_file input.txt output_txt_file output.txt output_word_json_file output_word.json output_txt_file_sorted output2.txt output_word_count_txt word_count.txt# 调用函数统计单词频率并生成相关输出 count_word_frequency(input_file, output_txt_file, output_word_json_file, output_txt_file_sorted, output_word_count_txt)# 读取输出文本文件的单词频率数据 words [] with open(output.txt, r, encodingutf-8) as file:for line in file:# 使用正则表达式匹配每行的单词和对应的频率match re.match(r(.?)\s(\d), line)if match: # 如果匹配成功word match.group(1) # 提取匹配到的单词部分freq int(match.group(2)) # 提取匹配到的数字部分作为频率words.append((word, freq)) # 将单词和对应的频率以元组的形式添加到列表中# 生成词云图像并保存为文件 wordcloud WordCloud(width800, height400, background_colorwhite).generate_from_frequencies(dict(words)) plt.figure(figsize(10, 6)) plt.imshow(wordcloud, interpolationbilinear) plt.axis(off) wordcloud.to_file(./images/wordcloud.png) plt.show()
http://www.w-s-a.com/news/514603/

相关文章:

  • 富平做网站十堰优化seo
  • 免费网站空间可访问wordpress弹窗注册代码
  • 东莞网站建设教程南京做代账会计在哪个网站上找
  • 网站开发好了 怎么发布wordpress数据库缓存插件
  • 工业电商网站怎么配色社交网站建设平台
  • 使用pycharm网站开发建一个网站需要什么条件
  • 网站建设哪些是需要外援的问题wordpress商品展示主题
  • 定制网站开发的目的是什么wordpress 增加按钮
  • 建设单位网站经费请示wordpress模板添加授权
  • 国外的电商网站有哪些为进一步加强校园网站建设
  • 专业集团门户网站建设企业微信商城和网站建设
  • 多少钱可以做网站找网络公司做推广费用
  • python php 网站开发网络营销师是干什么的
  • 网站建设设计方案动漫制作专业学校
  • 吴江区建设用地申报网站包装设计模板设计素材
  • 快速建站的公司wordpress 元数据定义
  • 网站seo分析工具网站标题用空格 逗号影响seo
  • 基金项目实验室信息网站建设wordpress文章新窗口打开
  • php网站开发就业前景做网站推荐源创网络
  • wordpress 8211西安网站优化维护
  • 泰安招聘网站有哪些wordpress 回复提醒
  • 网站服务器不稳定怎么打开网页企业营销策划心得体会
  • 自己做视频网站会不会追究版权企业商城网站建设方案
  • 烟台网站制作计划网站做seo的好处
  • 网站首页轮播官方网站下载拼多多
  • 罗庄区建设局网站自己做网站推广产品
  • 优秀flash网站欣赏苏州吴中区建设局网站
  • 网站添加wordpress博客网上商城购物系统论文
  • 上海市建设安全协会网站王夑晟企业网站建设需要做些什么
  • 网站app 开发辽宁建设工程信息网官网新网站是哪个