gensim学习之Dictionary

# -*- coding: utf-8 -*-
import jieba, os
import codecs
from gensim import corpora, models, similarities
from pprint import pprint
from collections import defaultdict
import sys
import pickle
reload(sys)
sys.setdefaultencoding('utf-8')

def print_dict(dict):
    for key in dict:
        print type(key),key,str(dict[key]),
    print
def test3():
    '''''
    gensim学习之Dictionary
    '''
    a = [['一','一','二'],['一','二','三']]
    b = ['一','一','三','四','四']
    dictionary = corpora.Dictionary(a)
    print "########dictionary信息##########"
    print str(dictionary) #
    print "字典,{单词id,在多少文档中出现}"
    print dictionary.dfs #字典,{单词id,在多少文档中出现}
    print "文档数目"
    print dictionary.num_docs #文档数目
    print "dictionary.items()"
    print_dict(dict(dictionary.items())) #
    print "字典,{单词id,对应的词}"
    print_dict(dictionary.id2token) #字典,{单词id,对应的词}
    print "字典,{词,对应的单词id}"
    print_dict(dictionary.token2id) #字典,{词,对应的单词id}
    print "所有词的个数"
    print dictionary.num_pos #所有词的个数
    print "每个文件中不重复词个数的和"
    print dictionary.num_nnz #每个文件中不重复词个数的和
    print "########doc2bow##########"
    #dictionary.add_documents([b])
    #allow_update->更新当前字典;return_missing->返回字典中不存在的词
    #result为b文章转换得到的词袋,列表[(单词id,词频)]
    result, missing = dictionary.doc2bow(b, allow_update=False, return_missing=True)
    print "词袋b,列表[(单词id,词频)]"
    print result
    print "不在字典中的词及其词频,字典[(单词,词频)]"
    print_dict(missing)
    print "########bow信息##########"
    for id, freq in result:
        print id, dictionary.id2token[id], freq
    print "########dictionary信息##########"
    #过滤文档频率大于no_below,小于no_above*num_docs的词
    dictionary.filter_extremes(no_below=1, no_above=0.5, keep_n=10)

    return

test3()

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值