邂逅760 2022-09-02 11:37 采纳率: 100%
浏览 98
已结题

Python词频统计

怎么在一段英语报告中提取词频统计,并按顺序排列,尝试了几种代码都是报错,求告知

  • 写回答

5条回答 默认 最新

  • 三只小菜猿 PHP领域新星创作者 2022-09-02 11:41
    关注
    import re
    
    # 请根据处理要求下面区域完成代码的编写。
    def get_artical(artical_path):
        with open(artical_path) as fr:
            data = fr.read()
        return data
    
    #处理函数
    def handle(data):    
        counts = {}
        #data = data.lower()
        data1 = re.sub('\n',' ',data)#替换换行符为空格
        reg = "[^A-Za-z\']"
        data = re.sub(reg,' ',data1)#只保存英文,同时保留don't isn't类似单词
        data = data.lower()
        list_data = data.split()#列表
        #遍历统计
        for word in list_data:
            if word in counts.keys():
                counts[word] = counts[word] +1
            else:
                counts[word] = 1
        return counts
    
    # get_artical()为自定义函数,可用于读取指定位置的试题内容。
    data = get_artical('./artical.txt')
    re_counts = handle(data)
    re_counts = sorted(re_counts.items(),key=lambda x:x[1],reverse=True)#词频从大到小排序,
    print(re_counts)
    
    
    

    试试这个看行不行

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 9月10日
  • 已采纳回答 9月2日
  • 创建了问题 9月2日

悬赏问题

  • ¥20 vscode虚拟环境依赖包未安装
  • ¥15 odoo17关于owl开发js代码问题
  • ¥15 光纤中多普勒频移公式的推导
  • ¥15 怎么制作一个人脸识别门禁系统
  • ¥20 大华dss监控平台网络关闭登不进去
  • ¥15 请使用蚁群算法解决下列问题,并给出我完整的代码
  • ¥20 关于php录入完成后,批量更新数据库
  • ¥15 请教往复密封润滑问题
  • ¥15 cocos creator发布ios包
  • ¥15 comsol压电材料数据