赤点规避 2022-03-22 01:57 采纳率: 66.7%
浏览 27
已结题

嵌套列表,列表和字符串如何按行进行词频统计?

在做英文文本的自然语言处理,进行词频统计时遇到了问题
前面部分形成了几种格式的数据,但如果想进行数据按行词频统计都会出现问题:
1.有嵌套列表数据,如何按内部列表进行词频统计?
如有:[[a,b,c,a][a,b,c,b][a,b,c,c]]
希望得到类似: ('a':2,'b':1,'c':1)('a':1,'b':2,'c':1)('a':1,'b':1,'c':2)这样的结果

2.有list数据,每行的元素间由‘\n’分隔(其实是把嵌套列表乱拆了一下,如果有好方法也请告诉我!),如何把这个列表分行,并按行进行词频统计?

3.有分行str数据,如何按单词(因为出现过按单词里的字母统计词频的错误)按行进行词频统计?

  • 写回答

1条回答 默认 最新

  • 陈.py 2022-03-22 08:58
    关注
    
    words = [['a', 'b', 'c', 'a'],['a', 'b', 'c', 'b'],['a', 'b', 'c', 'c']]
    
    
    def statistics(words):
        res = []
        for i in words:
            dict = {}
            for word in i:
                if word in dict.keys():
                    dict[word] = dict[word] + 1
                else:
                    dict[word] = 1
            w_order = sorted(dict.items(), key=lambda x: x[1], reverse=True)
            res.append(w_order)
        return res
    
    
    print(statistics(words))
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月5日
  • 已采纳回答 3月28日
  • 创建了问题 3月22日

悬赏问题

  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程
  • ¥30 Eclipse官网打不开,官网首页进不去,显示无法访问此页面,求解决方法
  • ¥15 关于smbclient 库的使用
  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?