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

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)
    
    
    

    试试这个看行不行

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • ·星辰大海 2022-09-02 11:43
    关注

    用过jieba库了吗

    评论
  • 小嗷犬 人工智能领域优质创作者 2022-09-02 12:04
    关注

    推荐使用jieba库:http://t.csdn.cn/UuNb8

    评论
  • 'ZYL' 2022-09-02 13:10
    关注

    换一个包

    评论
  • 旋转小马 2022-09-02 17:37
    关注

    可以使用jieba分词,还可以自定义词语和停用词,网上示例很多,稍微改改就可以

    评论
查看更多回答(4条)

报告相同问题?

问题事件

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

悬赏问题

  • ¥15 利用加权最小二乘法求亚马逊各类商品的价格指标?怎么求?
  • ¥15 c++ word自动化,为什么可用接口是空的?
  • ¥15 Matlab计算100000*100000的矩阵运算问题:
  • ¥50 VB6.0如何识别粘连的不规则的数字图片验证码
  • ¥16 需要完整的这份订单所有的代码,可以加钱
  • ¥30 写一个带界面控制的机房电脑一键开机关机并且实时监控的软件
  • ¥15 Stata数据分析请教
  • ¥15 请教如何为VS2022搭建 Debug|win32的openCV环境?
  • ¥15 关于#c++#的问题:c++如何使用websocketpp实现websocket接口调用,求示例代码和相关资料
  • ¥15 51单片机的外部中断,按下按键后不能切换到另一个模式