温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python统计文本中字频的方法

发布时间:2020-09-22 15:07:51 来源:亿速云 阅读:429 作者:小新 栏目:编程语言

python统计文本中字频的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!

思路:

是先把每个字符提出来放在列表里;

再过滤掉其中的标点符号;

最后用字典对某个字出现的频率进行累加。

下面以芳华这本小说为例:

#coding:utf-8
word_lst = []
word_dict = {}
exclude_str = ",。!?、()<>《》=:+-*—“”…" 
with open("芳华.txt","r") as fileIn ,open("芳华字频.txt",'w') as fileOut:
    # 添加每一个字到列表中
    for line in fileIn:
        for char in line:
            word_lst.append(char)
    # 用字典统计每个字出现的个数       
    for char in word_lst:
        if char not in exclude_str:
            if char.strip() not in word_dict: # strip去除各种空白
                word_dict[char] = 1
            else :
                word_dict[char] += 1
    # 排序
    #   x[1]是按字频排序,x[0]则是按字排序
    lstWords = sorted(word_dict.items(), key=lambda x:x[1],  reverse=True) 
   
    # 输出结果 (前100)
    print ('字符\t字频')
    print ('=============')
    for e in lstWords[:100]:
        print ('%s\t%d' % e)
        fileOut.write('%s, %d\n' % e)

输出结果

字符    字频
=============
的    3641
一    1834
了    1748
是    1506
不    1267
我    1229
她    1156
他    985
小    962
个    921
人    866
在    853
刘    745
丁    728
那    723
上    705
来    698
峰    691
们    684
就    667
说    577
有    572
到    564
这    562
里    537
儿    520
嫚    499
子    494
都    492
着    491
大    482
么    462
出    460
看    441
也    415
得    404
下    383
时    367
还    366
女    349
地    340
头    331
好    327
没    326
去    321
过    320
老    317
跟    311
你    309
把    307
对    303
年    301
会    300
生    291
为    289
发    289
要    281
何    280
亲    273
后    272
给    267
和    266
天    265
家    259
手    251
长    251
想    249
多    242
自    241
开    240
当    236
兵    235
样    232
郝    230
可    228
起    225
被    224
成    216
十    215
什    215
以    209
事    209
从    209
点    208
能    203
两    203
回    202
门    201
所    195
淑    188
雯    188
只    188
心    184
身    184
让    179
道    179
母    174
做    173
话    173
最    172
>>>

感谢各位的阅读!看完上述内容,你们对python统计文本中字频的方法大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI