赤点规避 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 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)